├── .github └── workflows │ ├── deutschland_generator.yaml │ └── openapi_check.yaml ├── CNAME ├── README.md ├── api_example.R ├── generator_config.yaml ├── index.html ├── openapi.yaml └── python-client ├── .openapi-generator-ignore ├── .openapi-generator ├── FILES └── VERSION ├── README.md ├── deutschland └── DashboardDeutschland │ ├── __init__.py │ ├── api │ ├── __init__.py │ ├── geo_api.py │ ├── get_api.py │ └── indicators_api.py │ ├── api_client.py │ ├── apis │ └── __init__.py │ ├── configuration.py │ ├── exceptions.py │ ├── model │ ├── __init__.py │ ├── geo.py │ ├── geo_crs.py │ ├── geo_crs_properties.py │ ├── get.py │ ├── get_category.py │ ├── get_layout_tiles_inner.py │ └── indicators.py │ ├── model_utils.py │ ├── models │ └── __init__.py │ └── rest.py ├── docs ├── Geo.md ├── GeoApi.md ├── GeoCrs.md ├── GeoCrsProperties.md ├── Get.md ├── GetApi.md ├── GetCategory.md ├── GetLayoutTilesInner.md ├── Indicators.md └── IndicatorsApi.md ├── pyproject.toml ├── requirements.txt ├── sphinx-docs ├── Makefile ├── conf.py ├── index.rst ├── make.bat └── source │ ├── DashboardDeutschland.api.rst │ ├── DashboardDeutschland.apis.rst │ ├── DashboardDeutschland.model.rst │ ├── DashboardDeutschland.models.rst │ ├── DashboardDeutschland.rst │ └── modules.rst ├── test-requirements.txt ├── test ├── __init__.py ├── test_geo.py ├── test_geo_api.py ├── test_geo_crs.py ├── test_geo_crs_properties.py ├── test_get.py ├── test_get_api.py ├── test_get_category.py ├── test_get_layout_tiles_inner.py ├── test_indicators.py └── test_indicators_api.py └── tox.ini /.github/workflows/deutschland_generator.yaml: -------------------------------------------------------------------------------- 1 | on: [push] 2 | jobs: 3 | deutschland_generation: 4 | name: "Deutschland Generation" 5 | runs-on: ubuntu-latest 6 | strategy: 7 | fail-fast: false 8 | matrix: 9 | python-version: ['3.11.1' ] 10 | steps: 11 | - uses: actions/checkout@v2 12 | 13 | # Create default .spectral.yaml file used for linting if its not existing already 14 | - name: "Create spectral file if it not exists" 15 | continue-on-error: true 16 | run: | 17 | set -C; echo "extends: spectral:oas" > .spectral.yaml 18 | # Runs a single command using the runners shell 19 | - name: "Lint file" 20 | uses: stoplightio/spectral-action@v0.8.2 21 | with: 22 | file_glob: "openapi.yaml" 23 | 24 | - name: "Generate deutschland code" 25 | uses: wirthual/deutschland-generator-action@latest 26 | with: 27 | openapi-file: ${{ github.workspace }}/openapi.yaml 28 | commit-to-git: true 29 | upload-to-pypi: true 30 | upload-to-testpypi: false 31 | pypi-token: ${{ secrets.PYPI_PRODUCTION }} 32 | testpypi-token: ${{ secrets.PYPI_TEST }} 33 | python-version: ${{ matrix.python-version }} 34 | -------------------------------------------------------------------------------- /.github/workflows/openapi_check.yaml: -------------------------------------------------------------------------------- 1 | on: [push, pull_request] 2 | jobs: 3 | openapi_check: 4 | name: "OpenAPI check" 5 | runs-on: ubuntu-latest 6 | steps: 7 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 8 | - uses: actions/checkout@v2 9 | 10 | # Create default .spectral.yaml file used for linting if its not existing already 11 | - name: "Create spectral file if it not exists" 12 | continue-on-error: true 13 | run: | 14 | set -C; echo "extends: spectral:oas" > .spectral.yaml 15 | 16 | # Run Spectral 17 | - uses: stoplightio/spectral-action@v0.8.2 18 | with: 19 | file_glob: openapi.yaml 20 | spectral_ruleset: .spectral.yaml 21 | -------------------------------------------------------------------------------- /CNAME: -------------------------------------------------------------------------------- 1 | dashboard.deutschland.api.bund.dev 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Dashboard Deutschland API 2 | 3 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. 4 | 5 | 6 | ## Get 7 | 8 | **URL:** https://www.dashboard-deutschland.de/api/dashboard/get 9 | 10 | Die API ermöglicht über diese URL den Zugriff auf alle gültigen Einträge des ids-Parameters getrennt nach Kategorien (siehe unten, Indikatoren). 11 | 12 | 13 | ## Indikatoren 14 | 15 | **URL:** www.dashboard-deutschland.de/api/tile/indicators 16 | 17 | Die API ermöglicht über diese URL Zugriff auf unterschiedliche Indikatoren im JSON-Format über einfache GET-requests mit nur einem Parameter (namens *ids*). 18 | Der Parameter ids spezifiziert den gewünschten Indikator. 19 | Mögliche Ausprägungen sind im Folgenden tabellarisch dargestellt. 20 | Mehrere Semikolon-getrennte Angaben sind möglich. 21 | 22 | |Indikator|ids-value|Beispiel-URL| 23 | |---|---|---| 24 | |Importe und Exporte von Wasserstoff|tile_1654002158461|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1654002158461| 25 | |Täglicher LKW-Maut-Fahrleistungsindex|tile_1667226778807|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667226778807| 26 | |Lkw-Maut-Fahrleistungsindex|tile_1667205800085|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667205800085| 27 | |Preisindex für Eigentumswohnungen nach Kreistypen|data_woh_preise_immobilien_hpi_wohnungen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_preise_immobilien_hpi_wohnungen| 28 | |HCOB Einkaufsmanagerindex|tile_1667982123933|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667982123933| 29 | |Umsatz im Ausbaugewerbe|tile_1654070793733|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1654070793733| 30 | |Kapazitätsauslastung im Baugewerbe|data_bau_kapazitaetsauslastung_bbsr|www.dashboard-deutschland.de/api/tile/indicators?ids=data_bau_kapazitaetsauslastung_bbsr| 31 | |Weltmarktpreise für Weizen|tile_1654606920834|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1654606920834| 32 | |Automobilindustrie|tile_1666960710868|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666960710868| 33 | |Entwicklung der Nominallöhne nach Quintilen|tile_1684316122432|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1684316122432| 34 | |Entwicklung des deutschen Arbeitsmarktes anhand der LinkedIn Hiring Rate|tile_1673880739519|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1673880739519| 35 | |Flugverkehr weltweit|tile_1667989324139|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667989324139| 36 | |Anzahl genehmigter Wohnungen im Neubau nach Gebäudeart|data_woh_baugenehmigungen_wohnungen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_baugenehmigungen_wohnungen| 37 | |Verbrauch von Mineralölprodukten in Deutschland|tile_1663665588691|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663665588691| 38 | |Füllstand deutscher Erdgasspeicher|tile_1667227714015|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667227714015| 39 | |Fertiggestellte Neubauten nach überwiegend verwendeter Heizenergie|tile_1654000747086|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1654000747086| 40 | |Genehmigte neu zu errichtende Wohngebäude mit ein und zwei Wohnungen nach überwiegend verwendeter Heizenergie|tile_1663665272454|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663665272454| 41 | |Auftragseingang im Bauhauptgewerbe|data_bau_auftragseingang|www.dashboard-deutschland.de/api/tile/indicators?ids=data_bau_auftragseingang| 42 | |Energieverbrauch für Wohnen nach Anwendungsbereichen|tile_1651060108903|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1651060108903| 43 | |ifo Geschäftsklima|tile_1667288019608|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667288019608| 44 | |Umsatz im Gastgewerbe|tile_1667810908930|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667810908930| 45 | |Genehmigte und fertiggestellte Wohnungen|tile_1678111428688|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1678111428688| 46 | |Verbraucherpreisindex für Nettokaltmiete, Wohnungsnebenkosten und Haushaltsenergie|data_woh_bruttokaltmiete|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_bruttokaltmiete| 47 | |Stimmungsindikatoren Konsum|tile_1667983271066|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667983271066| 48 | |Gold- und Kupferpreis|data_preise_gold_kupfer|www.dashboard-deutschland.de/api/tile/indicators?ids=data_preise_gold_kupfer| 49 | |Verschuldung der bedeutendsten Sondervermögen des Bundes|tile_1650977632272|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1650977632272| 50 | |Verbraucherpreisindex für Nettokaltmiete nach Kreistypen|data_woh_nettokaltmiete|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_nettokaltmiete| 51 | |Umsatz in Branchen des Verarbeitenden Gewerbes|data_umsatz_ausgewaehlte_branchen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_umsatz_ausgewaehlte_branchen| 52 | |HWWI-Rohstoffpreisindex|tile_1667215458776|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667215458776| 53 | |Kassenmäßige Steuereinnahmen aus Gemeindesteuern|data_gemeindesteuern|www.dashboard-deutschland.de/api/tile/indicators?ids=data_gemeindesteuern| 54 | |Umlaufrenditen Staats- und Unternehmensanleihen|data_staats_und_unt_anleihen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_staats_und_unt_anleihen| 55 | |Kassenmäßige Steuereinnahmen insgesamt und der Gemeinden/Gemeindeverbände|data_steuereinnahmen_insgesamt_gemeinden|www.dashboard-deutschland.de/api/tile/indicators?ids=data_steuereinnahmen_insgesamt_gemeinden| 56 | |Dienstleistungsproduktion|tile_1667825347006|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667825347006| 57 | |ZEW Konjunkturausblick|tile_1667228531297|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667228531297| 58 | |Exporterwartungen und Containerumschlag|tile_1666962783823|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666962783823| 59 | |Passantenfrequenzindex|tile_1667982573430|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667982573430| 60 | |Flugverkehr Deutschland|tile_1667987544456|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667987544456| 61 | |Preisentwicklung für ausgewählte Baumaterialien|tile_1667308898055|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667308898055| 62 | |Baupreisindizes|data_bau_bauleistungspreise|www.dashboard-deutschland.de/api/tile/indicators?ids=data_bau_bauleistungspreise| 63 | |Produktion im Produzierenden Gewerbe|tile_1667824915093|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667824915093| 64 | |Auftragseingang in Branchen des Verarbeitenden Gewerbes|data_auftragseingang_ausgewaehlte_branchen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_auftragseingang_ausgewaehlte_branchen| 65 | |ifo Produktionserwartungen|tile_1667289137702|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667289137702| 66 | |Auftragseingang im Verarbeitenden Gewerbe|tile_1667828024262|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667828024262| 67 | |Entwicklung der Nominallöhne nach Beschäftigungsart|tile_1684314533676|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1684314533676| 68 | |Umsatz mit Maßnahmen zur Verbesserung der Energieeffizienz von Gebäuden|tile_1665656599909|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1665656599909| 69 | |Umsatz mit Motorenkraftstoffen an Tankstellen|tile_1663667870377|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663667870377| 70 | |Arbeitslosigkeit und offene Stellen|tile_1666958835081|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666958835081| 71 | |Preisveränderung|tile_1668694599167|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1668694599167| 72 | |Entwicklung ausgewählter Aggregate des Bruttoinlandsprodukts|tile_1667814729862|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667814729862| 73 | |Gasimporte nach Deutschland|tile_1667993866759|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667993866759| 74 | |Einzelhandelsumsatz|tile_1667460685909|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667460685909| 75 | |Kassenmäßige Steuereinnahmen aus Gemeinschaft-, Bundes- und Landessteuern|data_gemeinschaft_bundes_landessteuern|www.dashboard-deutschland.de/api/tile/indicators?ids=data_gemeinschaft_bundes_landessteuern| 76 | |Außenhandelsbilanz|data_aussenhandelsbilanz|www.dashboard-deutschland.de/api/tile/indicators?ids=data_aussenhandelsbilanz| 77 | |Verschuldung des Bundes inklusive Darlehensfinanzierung nach Restlaufzeiten|tile_1650978274644|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1650978274644| 78 | |Stromverbrauch|tile_1667214343714|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667214343714| 79 | |Wohnfläche in genehmigten Neubauwohnungen|data_woh_baugenehmigungen_wohnflaeche|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_baugenehmigungen_wohnflaeche| 80 | |Energieverbrauch für Wohnen nach Energieträgern|data_woh_energieverbrauch_energietraeger|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_energieverbrauch_energietraeger| 81 | |Passantenfrequenzen: Veränderung in ausgewählten Großstädten|data_mobilitaet_hystreet|www.dashboard-deutschland.de/api/tile/indicators?ids=data_mobilitaet_hystreet| 82 | |Bereinigte kassenmäßige Steuereinnahmen aus Gemeinschaft-, Bundes- und Landessteuern|data_einnahmen_gemeinschaft_bundes_landessteuern|www.dashboard-deutschland.de/api/tile/indicators?ids=data_einnahmen_gemeinschaft_bundes_landessteuern| 83 | |Außenhandel|tile_1667830902757|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667830902757| 84 | |Ölpreis (Sorte Brent)|tile_1667995478843|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667995478843| 85 | |Energiepreisveränderung|tile_1667826504852|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667826504852| 86 | |Stimmungsindikatoren Arbeitsmarkt|data_iab_ifo_barometer|www.dashboard-deutschland.de/api/tile/indicators?ids=data_iab_ifo_barometer| 87 | |Kraftstoffpreise an öffentlichen Tankstellen|tile_1667921381760|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667921381760| 88 | |Neue Hypothekenverträge|tile_1667817211258|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667817211258| 89 | |Anteil der Grünen Bundeswertpapiere an der Verschuldung des Bundes inklusive Darlehensfinanzierung|tile_1650979109395|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1650979109395| 90 | |Kassenmäßige Steuereinnahmen von Bund und Ländern|data_steuereinnahmen_bund_laender|www.dashboard-deutschland.de/api/tile/indicators?ids=data_steuereinnahmen_bund_laender| 91 | |Außenhandel mit ausgewählten Ländern|tile_1667832713510|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667832713510| 92 | |Entwicklung des deutschen Arbeitsmarktes anhand von Stellenausschreibungen auf Indeed|tile_1666961477511|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666961477511| 93 | |Entwicklung des Bruttoinlandsprodukts|tile_1667811574092|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667811574092| 94 | |Baltic Dry Index|tile_1666960424161|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666960424161| 95 | |Außenhandel mit ausgewählten Ländergruppen|data_aussenhandel_laendergruppen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_aussenhandel_laendergruppen| 96 | |Verschuldung des Bundeshaushalts und seiner Sondervermögen|tile_1650978797816|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1650978797816| 97 | |Produktion von Solarkollektoren, Solarmodulen und Wärmepumpen|tile_1663667563512|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663667563512| 98 | |Wechselkurs Euro/US-Dollar|tile_1667217389888|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667217389888| 99 | |Anzahl der genehmigten Wohnungen nach Bauherr|data_woh_baugenehmigungen_bautraeger|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_baugenehmigungen_bautraeger| 100 | |Kreditvergaben und Online-Transaktionen|tile_1667978809506|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667978809506| 101 | |Erwerbstätigkeit|tile_1667822587333|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667822587333| 102 | |Umsatz im Verarbeitenden Gewerbe|tile_1667828804581|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667828804581| 103 | |Benzinpreise im EU-Vergleich|tile_1663664545105|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663664545105| 104 | |ifo Knappheitsindikator|tile_1667289768923|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667289768923| 105 | |Renditespreads 10-jähriger Staatsanleihen gegenüber Deutschland|data_zinsspread_10_j_anleihen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_zinsspread_10_j_anleihen| 106 | |Strompreis|data_preise_strom|www.dashboard-deutschland.de/api/tile/indicators?ids=data_preise_strom| 107 | |Wöchentlicher Aktivitätsindex|tile_1667211885741|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667211885741| 108 | |Beschäftigung im Baugewerbe|data_bau_beschaeftigung_vgr|www.dashboard-deutschland.de/api/tile/indicators?ids=data_bau_beschaeftigung_vgr| 109 | |DIW Konjunkturbarometer|tile_1666961011248|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666961011248| 110 | |Preisindex für Ein- und Zweifamilienhäuser nach Kreistypen|data_woh_preise_immobilien_hpi_haueser|www.dashboard-deutschland.de/api/tile/indicators?ids=data_woh_preise_immobilien_hpi_haueser| 111 | |Produktion in Branchen des Produzierenden Gewerbes|data_produktion_ausgewaehlte_branchen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_produktion_ausgewaehlte_branchen| 112 | |Pegelstände am Rhein|tile_1666960227357|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666960227357| 113 | |Preisentwicklung für Energie (Strom, Gas und andere Brennstoffe) im EU-Vergleich|tile_1663666887687|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663666887687| 114 | |Produktion im Baugewerbe|tile_1667890765659|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667890765659| 115 | |Energieverbrauch der Industrie nach Energieträgern|tile_1654002609295|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1654002609295| 116 | |Nettostromerzeugung|tile_1666961555651|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1666961555651| 117 | |Neuzulassungen von Personenkraftwagen nach Antriebsarten|tile_1663666467966|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663666467966| 118 | |Umsatz im Bauhauptgewerbe|tile_1654068021178|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1654068021178| 119 | |Tischreservierungen über OpenTable|tile_1667208064878|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667208064878| 120 | |Exporte und Importe von Wärmepumpen und Photovoltaikanlagen|tile_1663664931250|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1663664931250| 121 | |Renditen Bundeswertpapiere|data_umlaufrenditen_bundesanleihen|www.dashboard-deutschland.de/api/tile/indicators?ids=data_umlaufrenditen_bundesanleihen| 122 | |Importe fossiler Energieträger|tile_1654001211812|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1654001211812| 123 | |Bonitätschecks von Wohnungssuchenden|tile_1667995046610|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667995046610| 124 | |Preisindizes zu Bau oder Erwerb von Wohneigentum|tile_1656076602735|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1656076602735| 125 | |Absatz von Warengruppen im Lebensmitteleinzelhandel|tile_1667821076015|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667821076015| 126 | |Außenhandel nach VGR-Konzept|tile_1667821569597|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667821569597| 127 | |Aktienindizes|tile_1667210963256|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1667210963256| 128 | |Nettonennleistung der Anlagen zur Elektrizitätserzeugung|tile_1722432860129|www.dashboard-deutschland.de/api/tile/indicators?ids=tile_1722432860129| 129 | 130 | 131 | ## Geojson 132 | 133 | **URL:** www.dashboard-deutschland.de/geojson/de-all.geo.json 134 | 135 | Die API ermöglicht Zugriff auf Geojson-Daten zu Deutschland und den Ländern (00-DE_admin1_400). 136 | 137 | 138 | ## Beispiel 139 | 140 | ```bash 141 | indicators=$(curl -m 60 'https://www.dashboard-deutschland.de/api/tile/indicators?ids=data_adv_flugverkehr;data_aussenhandel;data_ba_arbeitslose_und_stellen;data_bruttoinlandsprodukt;data_corona_zuschuesse;data_einnahmen_gemeinschaft_bundes_landessteuern;data_ifo_geschaeftsklima;data_kfw_sondermassnahme_neu;data_preisentwicklung;data_umsatz_ausgewaehlte_branchen;defacto_ges_diag_covid19_hospitalizationincidence_map_de;ginsy_ges_bev_sterbl_abs_sterbl_de;ginsy_ges_diag_covid19_7_tage_inzidenz_map_de;tile_1648135639982 142 | ') 143 | ``` 144 | -------------------------------------------------------------------------------- /api_example.R: -------------------------------------------------------------------------------- 1 | # Get all indicator-ids 2 | #---------------------- 3 | url0="https://www.dashboard-deutschland.de/api/dashboard/get" 4 | dat0=httr::content(httr::GET(url0)) 5 | clusterIDs=sapply(dat0,function(x)x$id) 6 | indicatorIDs=sapply(dat0,function(x)sapply(x$layoutTiles,function(y)y$indicatorid)) 7 | names(indicatorIDs)=clusterIDs 8 | 9 | # Get all data on all indicator-ids 10 | #---------------------------------- 11 | url1=paste0("www.dashboard-deutschland.de/api/tile/indicators?ids=",paste(unlist(indicatorIDs),collapse=";")) 12 | dat1=httr::content(httr::GET(url1)) 13 | length(dat1)==length(unique(unlist(indicatorIDs))) 14 | json=sapply(dat1,function(x)rjson::fromJSON(x$json)) 15 | 16 | # Output Markdown-table 17 | #---------------------- 18 | tab=paste(c("|Indikator|ids-value|Beispiel-URL|","|---|---|---|", 19 | sapply(dat1,function(x)paste0("|",x$title,"|",x$id,"|www.dashboard-deutschland.de/api/tile/indicators?ids=",x$id,"|"))), 20 | collapse="\n") 21 | writeLines(tab,"table.txt") 22 | 23 | writeLines(paste(sapply(dat1,function(x)paste0("- ",x$id," (",x$title,")")),collapse="\n"),"list.txt") 24 | 25 | -------------------------------------------------------------------------------- /generator_config.yaml: -------------------------------------------------------------------------------- 1 | templateDir: deutschland_templates # For local use: ./local/deutschland_templates 2 | additionalProperties: 3 | packageName: "DashboardDeutschland" 4 | infoName: "BundesAPI" 5 | infoEmail: "kontakt@bund.dev" 6 | packageVersion: 0.1.0 7 | packageUrl: "https://github.com/bundesAPI/dashboard-deutschland-api" 8 | namespace: "deutschland" 9 | docLanguage: "de" 10 | gitHost: "github.com" 11 | gitUserId: "bundesAPI" 12 | gitRepoId: "dashboard-deutschland-api" 13 | files: 14 | pyproject.mustache: 15 | destinationFilename: pyproject.toml 16 | templateType: SupportingFiles 17 | requirements.txt: {} 18 | create_doc.mustache: 19 | destinationFilename: create_doc.py 20 | templateType: SupportingFiles 21 | rename_generated_code.mustache: 22 | destinationFilename: rename_generated_code.py 23 | templateType: SupportingFiles 24 | README.mustache: 25 | destinationFilename: README.md 26 | templateType: SupportingFiles 27 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Dashboard Deutschland API 8 | 9 | 10 |
[DE]/[EN]
11 | 12 |
13 | 14 | 15 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /python-client/.openapi-generator-ignore: -------------------------------------------------------------------------------- 1 | # OpenAPI Generator Ignore 2 | # Generated by openapi-generator https://github.com/openapitools/openapi-generator 3 | 4 | # Use this file to prevent files from being overwritten by the generator. 5 | # The patterns follow closely to .gitignore or .dockerignore. 6 | 7 | # As an example, the C# client generator defines ApiClient.cs. 8 | # You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line: 9 | #ApiClient.cs 10 | 11 | # You can match any string of characters against a directory, file or extension with a single asterisk (*): 12 | #foo/*/qux 13 | # The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux 14 | 15 | # You can recursively match patterns against a directory, file or extension with a double asterisk (**): 16 | #foo/**/qux 17 | # This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux 18 | 19 | # You can also negate patterns with an exclamation (!). 20 | # For example, you can ignore all files in a docs folder with the file extension .md: 21 | #docs/*.md 22 | # Then explicitly reverse the ignore rule for a single file: 23 | #!docs/README.md 24 | -------------------------------------------------------------------------------- /python-client/.openapi-generator/FILES: -------------------------------------------------------------------------------- 1 | .gitignore 2 | .gitlab-ci.yml 3 | .openapi-generator-ignore 4 | .travis.yml 5 | DashboardDeutschland/__init__.py 6 | DashboardDeutschland/api/__init__.py 7 | DashboardDeutschland/api/geo_api.py 8 | DashboardDeutschland/api/get_api.py 9 | DashboardDeutschland/api/indicators_api.py 10 | DashboardDeutschland/api_client.py 11 | DashboardDeutschland/apis/__init__.py 12 | DashboardDeutschland/configuration.py 13 | DashboardDeutschland/exceptions.py 14 | DashboardDeutschland/model/__init__.py 15 | DashboardDeutschland/model/geo.py 16 | DashboardDeutschland/model/geo_crs.py 17 | DashboardDeutschland/model/geo_crs_properties.py 18 | DashboardDeutschland/model/get.py 19 | DashboardDeutschland/model/get_category.py 20 | DashboardDeutschland/model/get_layout_tiles_inner.py 21 | DashboardDeutschland/model/indicators.py 22 | DashboardDeutschland/model_utils.py 23 | DashboardDeutschland/models/__init__.py 24 | DashboardDeutschland/rest.py 25 | README.md 26 | create_doc.py 27 | docs/Geo.md 28 | docs/GeoApi.md 29 | docs/GeoCrs.md 30 | docs/GeoCrsProperties.md 31 | docs/Get.md 32 | docs/GetApi.md 33 | docs/GetCategory.md 34 | docs/GetLayoutTilesInner.md 35 | docs/Indicators.md 36 | docs/IndicatorsApi.md 37 | git_push.sh 38 | pyproject.toml 39 | rename_generated_code.py 40 | requirements.txt 41 | requirements.txt 42 | setup.cfg 43 | setup.py 44 | test-requirements.txt 45 | test/__init__.py 46 | test/test_geo.py 47 | test/test_geo_api.py 48 | test/test_geo_crs.py 49 | test/test_geo_crs_properties.py 50 | test/test_get.py 51 | test/test_get_api.py 52 | test/test_get_category.py 53 | test/test_get_layout_tiles_inner.py 54 | test/test_indicators.py 55 | test/test_indicators_api.py 56 | tox.ini 57 | -------------------------------------------------------------------------------- /python-client/.openapi-generator/VERSION: -------------------------------------------------------------------------------- 1 | 6.1.0 -------------------------------------------------------------------------------- /python-client/README.md: -------------------------------------------------------------------------------- 1 | # DashboardDeutschland 2 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. 3 | 4 | This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: 5 | 6 | - API version: 1.0.0 7 | - Package version: 0.1.0 8 | - Build package: org.openapitools.codegen.languages.PythonClientCodegen 9 | For more information, please visit [https://github.com/AndreasFischer1985/dashboard-deutschland-api](https://github.com/AndreasFischer1985/dashboard-deutschland-api) 10 | 11 | ## Requirements. 12 | 13 | Python >= 3.6 14 | 15 | ## Installation & Usage 16 | ### pip install 17 | 18 | ```sh 19 | pip install deutschland[DashboardDeutschland] 20 | ``` 21 | 22 | ### poetry install 23 | 24 | ```sh 25 | poetry add deutschland -E DashboardDeutschland 26 | ``` 27 | 28 | ### Setuptools 29 | 30 | Install via [Setuptools](http://pypi.python.org/pypi/setuptools). 31 | 32 | ```sh 33 | python setup.py install --user 34 | ``` 35 | (or `sudo python setup.py install` to install the package for all users) 36 | 37 | ## Usage 38 | 39 | Import the package: 40 | ```python 41 | from deutschland import DashboardDeutschland 42 | ``` 43 | 44 | ## Getting Started 45 | 46 | Please follow the [installation procedure](#installation--usage) and then run the following: 47 | 48 | ```python 49 | 50 | import time 51 | from deutschland import DashboardDeutschland 52 | from pprint import pprint 53 | from deutschland.DashboardDeutschland.api import geo_api 54 | from deutschland.DashboardDeutschland.model.geo import Geo 55 | # Defining the host is optional and defaults to https://www.dashboard-deutschland.de 56 | # See configuration.py for a list of all supported configuration parameters. 57 | configuration = DashboardDeutschland.Configuration( 58 | host = "https://www.dashboard-deutschland.de" 59 | ) 60 | 61 | 62 | 63 | # Enter a context with an instance of the API client 64 | with DashboardDeutschland.ApiClient(configuration) as api_client: 65 | # Create an instance of the API class 66 | api_instance = geo_api.GeoApi(api_client) 67 | 68 | try: 69 | # Zugriff auf Geojson-Daten zu Deutschland und den Ländern 70 | api_response = api_instance.geo() 71 | pprint(api_response) 72 | except DashboardDeutschland.ApiException as e: 73 | print("Exception when calling GeoApi->geo: %s\n" % e) 74 | ``` 75 | 76 | ## Documentation for API Endpoints 77 | 78 | All URIs are relative to *https://www.dashboard-deutschland.de* 79 | 80 | Class | Method | HTTP request | Description 81 | ------------ | ------------- | ------------- | ------------- 82 | *GeoApi* | [**geo**](docs/GeoApi.md#geo) | **GET** /geojson/de-all.geo.json | Zugriff auf Geojson-Daten zu Deutschland und den Ländern 83 | *GetApi* | [**get**](docs/GetApi.md#get) | **GET** /api/dashboard/get | Zugriff auf alle gültigen Einträge des id-Parameters 84 | *IndicatorsApi* | [**indicators**](docs/IndicatorsApi.md#indicators) | **GET** /api/tile/indicators | Zugriff auf unterschiedliche Indikatoren 85 | 86 | 87 | ## Documentation For Models 88 | 89 | - [Geo](docs/Geo.md) 90 | - [GeoCrs](docs/GeoCrs.md) 91 | - [GeoCrsProperties](docs/GeoCrsProperties.md) 92 | - [Get](docs/Get.md) 93 | - [GetCategory](docs/GetCategory.md) 94 | - [GetLayoutTilesInner](docs/GetLayoutTilesInner.md) 95 | - [Indicators](docs/Indicators.md) 96 | 97 | 98 | ## Documentation For Authorization 99 | 100 | All endpoints do not require authorization. 101 | 102 | ## Author 103 | 104 | andreasfischer1985@web.de 105 | 106 | 107 | ## Notes for Large OpenAPI documents 108 | If the OpenAPI document is large, imports in DashboardDeutschland.apis and DashboardDeutschland.models may fail with a 109 | RecursionError indicating the maximum recursion limit has been exceeded. In that case, there are a couple of solutions: 110 | 111 | Solution 1: 112 | Use specific imports for apis and models like: 113 | - `from deutschland.DashboardDeutschland.api.default_api import DefaultApi` 114 | - `from deutschland.DashboardDeutschland.model.pet import Pet` 115 | 116 | Solution 2: 117 | Before importing the package, adjust the maximum recursion limit as shown below: 118 | ``` 119 | import sys 120 | sys.setrecursionlimit(1500) 121 | from deutschland import DashboardDeutschland 122 | from deutschland.DashboardDeutschland.apis import * 123 | from deutschland.DashboardDeutschland.models import * 124 | ``` 125 | 126 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/__init__.py: -------------------------------------------------------------------------------- 1 | # flake8: noqa 2 | 3 | """ 4 | Dashboard Deutschland API 5 | 6 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 7 | 8 | The version of the OpenAPI document: 1.0.0 9 | Contact: andreasfischer1985@web.de 10 | Generated by: https://openapi-generator.tech 11 | """ 12 | 13 | 14 | __version__ = "0.1.0" 15 | 16 | # import ApiClient 17 | from deutschland.DashboardDeutschland.api_client import ApiClient 18 | 19 | # import Configuration 20 | from deutschland.DashboardDeutschland.configuration import Configuration 21 | 22 | # import exceptions 23 | from deutschland.DashboardDeutschland.exceptions import ( 24 | ApiAttributeError, 25 | ApiException, 26 | ApiKeyError, 27 | ApiTypeError, 28 | ApiValueError, 29 | OpenApiException, 30 | ) 31 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/api/__init__.py: -------------------------------------------------------------------------------- 1 | # do not import all apis into this module because that uses a lot of memory and stack frames 2 | # if you need the ability to import all apis from one package, import them with 3 | # from deutschland.DashboardDeutschland.apis import GeoApi 4 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/api/geo_api.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.api_client import ApiClient 15 | from deutschland.DashboardDeutschland.api_client import Endpoint as _Endpoint 16 | from deutschland.DashboardDeutschland.model.geo import Geo 17 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 18 | check_allowed_values, 19 | check_validations, 20 | date, 21 | datetime, 22 | file_type, 23 | none_type, 24 | validate_and_convert_types, 25 | ) 26 | 27 | 28 | class GeoApi(object): 29 | """NOTE: This class is auto generated by OpenAPI Generator 30 | Ref: https://openapi-generator.tech 31 | 32 | Do not edit the class manually. 33 | """ 34 | 35 | def __init__(self, api_client=None): 36 | if api_client is None: 37 | api_client = ApiClient() 38 | self.api_client = api_client 39 | self.geo_endpoint = _Endpoint( 40 | settings={ 41 | "response_type": ([Geo],), 42 | "auth": [], 43 | "endpoint_path": "/geojson/de-all.geo.json", 44 | "operation_id": "geo", 45 | "http_method": "GET", 46 | "servers": None, 47 | }, 48 | params_map={ 49 | "all": [], 50 | "required": [], 51 | "nullable": [], 52 | "enum": [], 53 | "validation": [], 54 | }, 55 | root_map={ 56 | "validations": {}, 57 | "allowed_values": {}, 58 | "openapi_types": {}, 59 | "attribute_map": {}, 60 | "location_map": {}, 61 | "collection_format_map": {}, 62 | }, 63 | headers_map={ 64 | "accept": ["application/json"], 65 | "content_type": [], 66 | }, 67 | api_client=api_client, 68 | ) 69 | 70 | def geo(self, **kwargs): 71 | """Zugriff auf Geojson-Daten zu Deutschland und den Ländern # noqa: E501 72 | 73 | Die API ermöglicht Zugriff auf Geojson-Daten zu Deutschland und den Ländern (00-DE_admin1_400). # noqa: E501 74 | This method makes a synchronous HTTP request by default. To make an 75 | asynchronous HTTP request, please pass async_req=True 76 | 77 | >>> thread = api.geo(async_req=True) 78 | >>> result = thread.get() 79 | 80 | 81 | Keyword Args: 82 | _return_http_data_only (bool): response data without head status 83 | code and headers. Default is True. 84 | _preload_content (bool): if False, the urllib3.HTTPResponse object 85 | will be returned without reading/decoding response data. 86 | Default is True. 87 | _request_timeout (int/float/tuple): timeout setting for this request. If 88 | one number provided, it will be total request timeout. It can also 89 | be a pair (tuple) of (connection, read) timeouts. 90 | Default is None. 91 | _check_input_type (bool): specifies if type checking 92 | should be done one the data sent to the server. 93 | Default is True. 94 | _check_return_type (bool): specifies if type checking 95 | should be done one the data received from the server. 96 | Default is True. 97 | _spec_property_naming (bool): True if the variable names in the input data 98 | are serialized names, as specified in the OpenAPI document. 99 | False if the variable names in the input data 100 | are pythonic names, e.g. snake case (default) 101 | _content_type (str/None): force body content-type. 102 | Default is None and content-type will be predicted by allowed 103 | content-types and body. 104 | _host_index (int/None): specifies the index of the server 105 | that we want to use. 106 | Default is read from the configuration. 107 | _request_auths (list): set to override the auth_settings for an a single 108 | request; this effectively ignores the authentication 109 | in the spec for a single request. 110 | Default is None 111 | async_req (bool): execute request asynchronously 112 | 113 | Returns: 114 | [Geo] 115 | If the method is called asynchronously, returns the request 116 | thread. 117 | """ 118 | kwargs["async_req"] = kwargs.get("async_req", False) 119 | kwargs["_return_http_data_only"] = kwargs.get("_return_http_data_only", True) 120 | kwargs["_preload_content"] = kwargs.get("_preload_content", True) 121 | kwargs["_request_timeout"] = kwargs.get("_request_timeout", None) 122 | kwargs["_check_input_type"] = kwargs.get("_check_input_type", True) 123 | kwargs["_check_return_type"] = kwargs.get("_check_return_type", True) 124 | kwargs["_spec_property_naming"] = kwargs.get("_spec_property_naming", False) 125 | kwargs["_content_type"] = kwargs.get("_content_type") 126 | kwargs["_host_index"] = kwargs.get("_host_index") 127 | kwargs["_request_auths"] = kwargs.get("_request_auths", None) 128 | return self.geo_endpoint.call_with_http_info(**kwargs) 129 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/api/get_api.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.api_client import ApiClient 15 | from deutschland.DashboardDeutschland.api_client import Endpoint as _Endpoint 16 | from deutschland.DashboardDeutschland.model.get import Get 17 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 18 | check_allowed_values, 19 | check_validations, 20 | date, 21 | datetime, 22 | file_type, 23 | none_type, 24 | validate_and_convert_types, 25 | ) 26 | 27 | 28 | class GetApi(object): 29 | """NOTE: This class is auto generated by OpenAPI Generator 30 | Ref: https://openapi-generator.tech 31 | 32 | Do not edit the class manually. 33 | """ 34 | 35 | def __init__(self, api_client=None): 36 | if api_client is None: 37 | api_client = ApiClient() 38 | self.api_client = api_client 39 | self.get_endpoint = _Endpoint( 40 | settings={ 41 | "response_type": ([Get],), 42 | "auth": [], 43 | "endpoint_path": "/api/dashboard/get", 44 | "operation_id": "get", 45 | "http_method": "GET", 46 | "servers": None, 47 | }, 48 | params_map={ 49 | "all": [], 50 | "required": [], 51 | "nullable": [], 52 | "enum": [], 53 | "validation": [], 54 | }, 55 | root_map={ 56 | "validations": {}, 57 | "allowed_values": {}, 58 | "openapi_types": {}, 59 | "attribute_map": {}, 60 | "location_map": {}, 61 | "collection_format_map": {}, 62 | }, 63 | headers_map={ 64 | "accept": ["application/json"], 65 | "content_type": [], 66 | }, 67 | api_client=api_client, 68 | ) 69 | 70 | def get(self, **kwargs): 71 | """Zugriff auf alle gültigen Einträge des id-Parameters # noqa: E501 72 | 73 | Die API ermöglicht Zugriff auf alle gültigen Einträge des id-Parameters (siehe unten, Indikatoren). # noqa: E501 74 | This method makes a synchronous HTTP request by default. To make an 75 | asynchronous HTTP request, please pass async_req=True 76 | 77 | >>> thread = api.get(async_req=True) 78 | >>> result = thread.get() 79 | 80 | 81 | Keyword Args: 82 | _return_http_data_only (bool): response data without head status 83 | code and headers. Default is True. 84 | _preload_content (bool): if False, the urllib3.HTTPResponse object 85 | will be returned without reading/decoding response data. 86 | Default is True. 87 | _request_timeout (int/float/tuple): timeout setting for this request. If 88 | one number provided, it will be total request timeout. It can also 89 | be a pair (tuple) of (connection, read) timeouts. 90 | Default is None. 91 | _check_input_type (bool): specifies if type checking 92 | should be done one the data sent to the server. 93 | Default is True. 94 | _check_return_type (bool): specifies if type checking 95 | should be done one the data received from the server. 96 | Default is True. 97 | _spec_property_naming (bool): True if the variable names in the input data 98 | are serialized names, as specified in the OpenAPI document. 99 | False if the variable names in the input data 100 | are pythonic names, e.g. snake case (default) 101 | _content_type (str/None): force body content-type. 102 | Default is None and content-type will be predicted by allowed 103 | content-types and body. 104 | _host_index (int/None): specifies the index of the server 105 | that we want to use. 106 | Default is read from the configuration. 107 | _request_auths (list): set to override the auth_settings for an a single 108 | request; this effectively ignores the authentication 109 | in the spec for a single request. 110 | Default is None 111 | async_req (bool): execute request asynchronously 112 | 113 | Returns: 114 | [Get] 115 | If the method is called asynchronously, returns the request 116 | thread. 117 | """ 118 | kwargs["async_req"] = kwargs.get("async_req", False) 119 | kwargs["_return_http_data_only"] = kwargs.get("_return_http_data_only", True) 120 | kwargs["_preload_content"] = kwargs.get("_preload_content", True) 121 | kwargs["_request_timeout"] = kwargs.get("_request_timeout", None) 122 | kwargs["_check_input_type"] = kwargs.get("_check_input_type", True) 123 | kwargs["_check_return_type"] = kwargs.get("_check_return_type", True) 124 | kwargs["_spec_property_naming"] = kwargs.get("_spec_property_naming", False) 125 | kwargs["_content_type"] = kwargs.get("_content_type") 126 | kwargs["_host_index"] = kwargs.get("_host_index") 127 | kwargs["_request_auths"] = kwargs.get("_request_auths", None) 128 | return self.get_endpoint.call_with_http_info(**kwargs) 129 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/api/indicators_api.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.api_client import ApiClient 15 | from deutschland.DashboardDeutschland.api_client import Endpoint as _Endpoint 16 | from deutschland.DashboardDeutschland.model.indicators import Indicators 17 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 18 | check_allowed_values, 19 | check_validations, 20 | date, 21 | datetime, 22 | file_type, 23 | none_type, 24 | validate_and_convert_types, 25 | ) 26 | 27 | 28 | class IndicatorsApi(object): 29 | """NOTE: This class is auto generated by OpenAPI Generator 30 | Ref: https://openapi-generator.tech 31 | 32 | Do not edit the class manually. 33 | """ 34 | 35 | def __init__(self, api_client=None): 36 | if api_client is None: 37 | api_client = ApiClient() 38 | self.api_client = api_client 39 | self.indicators_endpoint = _Endpoint( 40 | settings={ 41 | "response_type": ([Indicators],), 42 | "auth": [], 43 | "endpoint_path": "/api/tile/indicators", 44 | "operation_id": "indicators", 45 | "http_method": "GET", 46 | "servers": None, 47 | }, 48 | params_map={ 49 | "all": [ 50 | "id", 51 | ], 52 | "required": [], 53 | "nullable": [], 54 | "enum": [], 55 | "validation": [], 56 | }, 57 | root_map={ 58 | "validations": {}, 59 | "allowed_values": {}, 60 | "openapi_types": { 61 | "id": (str,), 62 | }, 63 | "attribute_map": { 64 | "id": "id", 65 | }, 66 | "location_map": { 67 | "id": "query", 68 | }, 69 | "collection_format_map": {}, 70 | }, 71 | headers_map={ 72 | "accept": ["application/json"], 73 | "content_type": [], 74 | }, 75 | api_client=api_client, 76 | ) 77 | 78 | def indicators(self, **kwargs): 79 | """Zugriff auf unterschiedliche Indikatoren # noqa: E501 80 | 81 | Die API ermöglicht Zugriff auf unterschiedliche Indikatoren im JSON-Format über einfache GET-request. # noqa: E501 82 | This method makes a synchronous HTTP request by default. To make an 83 | asynchronous HTTP request, please pass async_req=True 84 | 85 | >>> thread = api.indicators(async_req=True) 86 | >>> result = thread.get() 87 | 88 | 89 | Keyword Args: 90 | id (str): \"Die API ermöglicht Zugriff auf unterschiedliche Indikatoren im JSON-Format über einfache GET-requests mit nur einem Parameter (namens `id`). Der Parameter `id` spezifizierten den gewünschten Indikator. Mögliche Ausprägungen sind im Folgenden nach Kategorien getrennt aufgelistet und in runden Klammern kurz erläutert. Mehrere Semikolon-getrennte Angaben sind möglich. - tile_1669367676459 (Anteil des Einkommens, den Miethaushalte für eine warme Wohnung (einschl. Strom) ausgeben, nach Haushaltsgröße und Ländern) - tile_1654002158461 (Importe und Exporte von Wasserstoff) - tile_1669189367122 (Wohngebäude nach Baujahr und Energieträger der Heizung in Hamburg) - tile_1669296178221 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Schleswig-Holstein) - tile_1673880739519 (Entwicklung des deutschen Arbeitsmarktes anhand der LinkedIn Hiring Rate) - ginsy_ges_infra_ausst_intensivbetten_de (Krankenhauskapazitäten) - data_steuereinnahmen_insgesamt_gemeinden (Kassenmäßige Steuereinnahmen insgesamt und der Gemeinden/Gemeindeverbände) - tile_1669196133752 (Wohngebäude nach Baujahr und Energieträger der Heizung in Niedersachsen) - tile_1650978274644 (Verschuldung des Bundeshaushalts inklusive Darlehensfinanzierung nach Restlaufzeiten) - tile_1669192154976 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Deutschland) - tile_1667460685909 (Einzelhandelsumsatz) - tile_1669284482727 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Berlin) - tile_1669121404231 (Wohngebäude nach Baujahr und Energieträger der Heizung in Bayern) - tile_1667828024262 (Auftragseingang im Verarbeitenden Gewerbe) - tile_1667289137702 (ifo Produktionserwartungen) - tile_1667995478843 (Ölpreis (Sorte Brent)) - data_woh_preise_immobilien_hpi_wohnungen (Preisindex für Eigentumswohnungen nach Kreistypen) - tile_1654000747086 (Fertiggestellte Neubauten nach überwiegend verwendeter Heizenergie) - tile_1667811574092 (Entwicklung des Bruttoinlandsprodukts) - tile_1669284915997 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Brandenburg) - tile_1669199369233 (Wohngebäude nach Baujahr und Energieträger der Heizung in Sachsen) - data_woh_bruttokaltmiete (Verbraucherpreisindex für Nettokaltmiete, Wohnungsnebenkosten und Haushaltsenergie) - tile_1666960424161 (Baltic Dry Index) - tile_1663665588691 (Verbrauch von Mineralölprodukten in Deutschland) - tile_1669283059085 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Bayern) - tile_1667890765659 (Produktion im Baugewerbe) - data_bau_kapazitaetsauslastung_bbsr (Kapazitätsauslastung im Baugewerbe) - tile_1663667563512 (Produktion von Solarkollektoren, Solarmodulen und Wärmepumpen) - tile_1651060108903 (Energieverbrauch für Wohnen nach Anwendungsbereichen) - tile_1669291731814 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Nordrhein-Westfalen) - tile_1663667870377 (Umsatz mit Motorenkraftstoffen an Tankstellen) - tile_1667814729862 (Entwicklung ausgewählter Aggregate des Bruttoinlandsprodukts) - data_bau_bauleistungspreise (Baupreisindizes) - data_gemeinschaft_bundes_landessteuern (Kassenmäßige Steuereinnahmen aus Gemeinschaft-, Bundes- und Landessteuern) - data_steuereinnahmen_bund_laender (Kassenmäßige Steuereinnahmen von Bund und Ländern) - tile_1654606920834 (Weltmarktpreise für Weizen) - data_iab_ifo_barometer (Stimmungsindikatoren Arbeitsmarkt) - tile_1666962783823 (Exporterwartungen und Containerumschlag) - data_aussenhandel_laendergruppen (Außenhandel mit ausgewählten Ländergruppen) - tile_1667208064878 (Tischreservierungen über OpenTable) - tile_1669196285543 (Wohngebäude nach Baujahr und Energieträger der Heizung in Nordrhein-Westfalen) - data_woh_energieverbrauch_energietraeger (Energieverbrauch für Wohnen nach Energieträgern) - tile_1669285361958 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Bremen) - tile_1650978797816 (Verschuldung des Bundeshaushalts und seiner Sondervermögen) - tile_1663663630535 (Aufkommen und Verwendung von Wasserstoff) - tile_1667215458776 (HWWI-Rohstoffpreisindex) - tile_1668694599167 (Preisveränderung) - data_preise_strom (Strompreis) - tile_1669189080637 (Wohngebäude nach Baujahr und Energieträger der Heizung in Bremen) - tile_1669128138583 (Wohngebäude nach Baujahr und Energieträger der Heizung in Brandenburg) - tile_1667921381760 (Kraftstoffpreise an öffentlichen Tankstellen) - tile_1667810908930 (Umsatz im Gastgewerbe) - tile_1667210963256 (Aktienindizes) - tile_1669291473838 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Niedersachsen) - tile_1669294221255 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung im Saarland) - tile_1669290807065 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Hessen) - tile_1654001211812 (Importe fossiler Energieträger) - tile_1654002609295 (Energieverbrauch der Industrie nach Energieträgern) - data_bau_beschaeftigung_vgr (Beschäftigung im Baugewerbe) - tile_1666961011248 (DIW Konjunkturbarometer) - tile_1667214343714 (Stromverbrauch) - tile_1663664931250 (Exporte und Importe von Wärmepumpen und Photovoltaikanlagen) - tile_1669196505323 (Wohngebäude nach Baujahr und Energieträger der Heizung in Rheinland-Pfalz) - tile_1669290437600 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Hamburg) - tile_1667308898055 (Preisentwicklung für ausgewählte Baumaterialien) - tile_1667824915093 (Produktion im Produzierenden Gewerbe) - tile_1663666887687 (Preisentwicklung für Energie (Strom, Gas und andere Brennstoffe) im EU-Vergleich) - data_woh_baugenehmigungen_wohnungen (Anzahl genehmigter Wohnungen im Neubau nach Gebäudeart) - tile_1650979109395 (Anteil der Grünen Bundeswertpapiere an der Verschuldung des Bundes inklusive Darlehensfinanzierung) - tile_1667828804581 (Umsatz im Verarbeitenden Gewerbe) - tile_1663666467966 (Neuzulassungen von Personenkraftwagen nach Antriebsarten) - tile_1669295737260 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Sachsen) - tile_1669121170132 (Wohngebäude nach Baujahr und Energieträger der Heizung in Baden-Württemberg) - tile_1669197166529 (Wohngebäude nach Baujahr und Energieträger der Heizung im Saarland) - tile_1667288019608 (ifo Geschäftsklima) - data_aussenhandelsbilanz (Außenhandelsbilanz) - tile_1678111428688 (Genehmigte und fertiggestellte Wohnungen) - tile_1669120080204 (Wohngebäude nach Baujahr und Energieträger der Heizung in Deutschland) - tile_1669189535447 (Wohngebäude nach Baujahr und Energieträger der Heizung in Hessen) - data_produktion_ausgewaehlte_branchen (Produktion in Branchen des Produzierenden Gewerbes) - tile_1669295963925 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Sachsen-Anhalt) - tile_1667205800085 (Lkw-Maut-Fahrleistungsindex) - data_woh_baugenehmigungen_bautraeger (Anzahl der genehmigten Wohnungen nach Bauherr) - tile_1667993866759 (Gasimporte nach Deutschland) - tile_1667825347006 (Dienstleistungsproduktion) - tile_1654070793733 (Umsatz im Ausbaugewerbe) - data_staats_und_unt_anleihen (Umlaufrenditen Staats- und Unternehmensanleihen) - data_einnahmen_gemeinschaft_bundes_landessteuern (Bereinigte kassenmäßige Steuereinnahmen aus Gemeinschaft-, Bundes- und Landessteuern) - tile_1669199838683 (Wohngebäude nach Baujahr und Energieträger der Heizung in Thüringen) - tile_1665656599909 (Umsatz mit Maßnahmen zur Verbesserung der Energieeffizienz von Gebäuden) - data_bau_auftragseingang (Auftragseingang im Bauhauptgewerbe) - tile_1669291142943 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Mecklenburg-Vorpommern) - tile_1669209397487 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Baden-Württemberg) - tile_1667987544456 (Flugverkehr Deutschland) - tile_1667832713510 (Außenhandel mit ausgewählten Ländern) - tile_1667830902757 (Außenhandel) - defacto_ges_diag_covid19_hospitalizationincidence_map_de (Covid-19-Hospitalisierungen) - tile_1669122207624 (Wohngebäude nach Baujahr und Energieträger der Heizung in Berlin) - tile_1667989324139 (Flugverkehr weltweit) - tile_1669293977917 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Rheinland-Pfalz) - data_auftragseingang_ausgewaehlte_branchen (Auftragseingang in Branchen des Verarbeitenden Gewerbes) - tile_1666961555651 (Nettostromerzeugung) - tile_1663665904253 (Nettonennleistung der Anlagen zur Elektrizitätserzeugung) - data_umsatz_ausgewaehlte_branchen (Umsatz in Branchen des Verarbeitenden Gewerbes) - data_preise_gold_kupfer (Gold- und Kupferpreis) - tile_1669189699623 (Wohngebäude nach Baujahr und Energieträger der Heizung in Mecklenburg-Vorpommern) - tile_1656076602735 (Preisindizes zu Bau oder Erwerb von Wohneigentum) - tile_1667821076015 (Absatz von Warengruppen im Lebensmitteleinzelhandel) - tile_1666960227357 (Pegelstände am Rhein) - tile_1667289768923 (ifo Knappheitsindikator) - data_mobilitaet_hystreet (Passantenfrequenzen: Veränderung in ausgewählten Großstädten) - tile_1667982573430 (Passantenfrequenzindex) - tile_1669199670270 (Wohngebäude nach Baujahr und Energieträger der Heizung in Schleswig-Holstein) - tile_1669366140497 (Anteil des Einkommens, den Miethaushalte für eine warme Wohnung (einschl. Strom) ausgeben, nach Haushaltsgröße) - tile_1667995046610 (Bonitätschecks von Wohnungssuchenden) - ginsy_ges_bev_sterbl_rel_sterbl_map_de (Relative Sterbefallzahlen in Deutschland im Vergleich) - tile_1667217389888 (Wechselkurs US-Dollar/Euro) - data_umlaufrenditen_bundesanleihen (Renditen Bundeswertpapiere) - tile_1669108022095 (Wohngebäude nach Heizungsart) - tile_1650977632272 (Verschuldung der bedeutendsten Sondervermögen des Bundes) - tile_1667211885741 (Wöchentlicher Aktivitätsindex) - tile_1666960710868 (Automobilindustrie) - tile_1667822587333 (Erwerbstätigkeit) - data_vdma_blitzumfragen (Blitzumfragen im Maschinen- und Anlagenbau) - tile_1669296388975 (Wohngebäude nach Gebäudegröße und Energieträger der Heizung in Thüringen) - data_woh_baugenehmigungen_wohnflaeche (Wohnfläche in genehmigten Neubauwohnungen) - tile_1667982123933 (HCOB Einkaufsmanagerindex) - tile_1667226778807 (Täglicher LKW-Maut-Fahrleistungsindex) - tile_1667228531297 (ZEW Konjunkturausblick) - tile_1669368695741 (Durchschnittliche Wohnkosten für Hauptmiethaushalte je Wohnung nach Haushaltsgröße) - tile_1663665272454 (Genehmigte neu zu errichtende Wohngebäude mit ein und zwei Wohnungen nach überwiegend verwendeter Heizenergie) - tile_1669368380310 (Durchschnittliche Wohnkosten für Hauptmiethaushalte je Quadratmeter nach Haushaltsgröße) - tile_1667826504852 (Energiepreisveränderung) - tile_1667227714015 (Füllstand deutscher Erdgasspeicher) - tile_1667821569597 (Außenhandel nach VGR-Konzept) - tile_1654068021178 (Umsatz im Bauhauptgewerbe) - tile_1666958835081 (Arbeitslosigkeit und offene Stellen) - ginsy_ges_bev_sterbl_abs_sterbl_de (Wöchentliche Sterbefallzahlen in Deutschland) - tile_1666961477511 (Entwicklung des deutschen Arbeitsmarktes anhand von Stellenausschreibungen auf Indeed) - data_zinsspread_10_j_anleihen (Renditespreads 10-jähriger Staatsanleihen gegenüber Deutschland) - data_gemeindesteuern (Kassenmäßige Steuereinnahmen aus Gemeindesteuern) - tile_1667817211258 (Neue Hypothekenverträge) - tile_1669199513126 (Wohngebäude nach Baujahr und Energieträger der Heizung in Sachsen-Anhalt) - data_woh_nettokaltmiete (Verbraucherpreisindex für Nettokaltmiete nach Kreistypen) - data_woh_preise_immobilien_hpi_haueser (Preisindex für Ein- und Zweifamilienhäuser nach Kreistypen) - data_ba_kurzarbeit (Kurzarbeit) - tile_1667983271066 (Stimmungsindikatoren Konsum) - tile_1667978809506 (Kreditvergaben und Online-Transaktionen) - tile_1663664545105 (Benzinpreise im EU-Vergleich) . [optional] 91 | _return_http_data_only (bool): response data without head status 92 | code and headers. Default is True. 93 | _preload_content (bool): if False, the urllib3.HTTPResponse object 94 | will be returned without reading/decoding response data. 95 | Default is True. 96 | _request_timeout (int/float/tuple): timeout setting for this request. If 97 | one number provided, it will be total request timeout. It can also 98 | be a pair (tuple) of (connection, read) timeouts. 99 | Default is None. 100 | _check_input_type (bool): specifies if type checking 101 | should be done one the data sent to the server. 102 | Default is True. 103 | _check_return_type (bool): specifies if type checking 104 | should be done one the data received from the server. 105 | Default is True. 106 | _spec_property_naming (bool): True if the variable names in the input data 107 | are serialized names, as specified in the OpenAPI document. 108 | False if the variable names in the input data 109 | are pythonic names, e.g. snake case (default) 110 | _content_type (str/None): force body content-type. 111 | Default is None and content-type will be predicted by allowed 112 | content-types and body. 113 | _host_index (int/None): specifies the index of the server 114 | that we want to use. 115 | Default is read from the configuration. 116 | _request_auths (list): set to override the auth_settings for an a single 117 | request; this effectively ignores the authentication 118 | in the spec for a single request. 119 | Default is None 120 | async_req (bool): execute request asynchronously 121 | 122 | Returns: 123 | [Indicators] 124 | If the method is called asynchronously, returns the request 125 | thread. 126 | """ 127 | kwargs["async_req"] = kwargs.get("async_req", False) 128 | kwargs["_return_http_data_only"] = kwargs.get("_return_http_data_only", True) 129 | kwargs["_preload_content"] = kwargs.get("_preload_content", True) 130 | kwargs["_request_timeout"] = kwargs.get("_request_timeout", None) 131 | kwargs["_check_input_type"] = kwargs.get("_check_input_type", True) 132 | kwargs["_check_return_type"] = kwargs.get("_check_return_type", True) 133 | kwargs["_spec_property_naming"] = kwargs.get("_spec_property_naming", False) 134 | kwargs["_content_type"] = kwargs.get("_content_type") 135 | kwargs["_host_index"] = kwargs.get("_host_index") 136 | kwargs["_request_auths"] = kwargs.get("_request_auths", None) 137 | return self.indicators_endpoint.call_with_http_info(**kwargs) 138 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/apis/__init__.py: -------------------------------------------------------------------------------- 1 | # flake8: noqa 2 | 3 | # Import all APIs into this package. 4 | # If you have many APIs here with many many models used in each API this may 5 | # raise a `RecursionError`. 6 | # In order to avoid this, import only the API that you directly need like: 7 | # 8 | # from deutschland.DashboardDeutschland.api.geo_api import GeoApi 9 | # 10 | # or import this package, but before doing it, use: 11 | # 12 | # import sys 13 | # sys.setrecursionlimit(n) 14 | 15 | # Import APIs into API package: 16 | from deutschland.DashboardDeutschland.api.geo_api import GeoApi 17 | from deutschland.DashboardDeutschland.api.get_api import GetApi 18 | from deutschland.DashboardDeutschland.api.indicators_api import IndicatorsApi 19 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/exceptions.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | 12 | class OpenApiException(Exception): 13 | """The base exception class for all OpenAPIExceptions""" 14 | 15 | 16 | class ApiTypeError(OpenApiException, TypeError): 17 | def __init__(self, msg, path_to_item=None, valid_classes=None, key_type=None): 18 | """Raises an exception for TypeErrors 19 | 20 | Args: 21 | msg (str): the exception message 22 | 23 | Keyword Args: 24 | path_to_item (list): a list of keys an indices to get to the 25 | current_item 26 | None if unset 27 | valid_classes (tuple): the primitive classes that current item 28 | should be an instance of 29 | None if unset 30 | key_type (bool): False if our value is a value in a dict 31 | True if it is a key in a dict 32 | False if our item is an item in a list 33 | None if unset 34 | """ 35 | self.path_to_item = path_to_item 36 | self.valid_classes = valid_classes 37 | self.key_type = key_type 38 | full_msg = msg 39 | if path_to_item: 40 | full_msg = "{0} at {1}".format(msg, render_path(path_to_item)) 41 | super(ApiTypeError, self).__init__(full_msg) 42 | 43 | 44 | class ApiValueError(OpenApiException, ValueError): 45 | def __init__(self, msg, path_to_item=None): 46 | """ 47 | Args: 48 | msg (str): the exception message 49 | 50 | Keyword Args: 51 | path_to_item (list) the path to the exception in the 52 | received_data dict. None if unset 53 | """ 54 | 55 | self.path_to_item = path_to_item 56 | full_msg = msg 57 | if path_to_item: 58 | full_msg = "{0} at {1}".format(msg, render_path(path_to_item)) 59 | super(ApiValueError, self).__init__(full_msg) 60 | 61 | 62 | class ApiAttributeError(OpenApiException, AttributeError): 63 | def __init__(self, msg, path_to_item=None): 64 | """ 65 | Raised when an attribute reference or assignment fails. 66 | 67 | Args: 68 | msg (str): the exception message 69 | 70 | Keyword Args: 71 | path_to_item (None/list) the path to the exception in the 72 | received_data dict 73 | """ 74 | self.path_to_item = path_to_item 75 | full_msg = msg 76 | if path_to_item: 77 | full_msg = "{0} at {1}".format(msg, render_path(path_to_item)) 78 | super(ApiAttributeError, self).__init__(full_msg) 79 | 80 | 81 | class ApiKeyError(OpenApiException, KeyError): 82 | def __init__(self, msg, path_to_item=None): 83 | """ 84 | Args: 85 | msg (str): the exception message 86 | 87 | Keyword Args: 88 | path_to_item (None/list) the path to the exception in the 89 | received_data dict 90 | """ 91 | self.path_to_item = path_to_item 92 | full_msg = msg 93 | if path_to_item: 94 | full_msg = "{0} at {1}".format(msg, render_path(path_to_item)) 95 | super(ApiKeyError, self).__init__(full_msg) 96 | 97 | 98 | class ApiException(OpenApiException): 99 | 100 | def __init__(self, status=None, reason=None, http_resp=None): 101 | if http_resp: 102 | self.status = http_resp.status 103 | self.reason = http_resp.reason 104 | self.body = http_resp.data 105 | self.headers = http_resp.getheaders() 106 | else: 107 | self.status = status 108 | self.reason = reason 109 | self.body = None 110 | self.headers = None 111 | 112 | def __str__(self): 113 | """Custom error messages for exception""" 114 | error_message = "Status Code: {0}\n" "Reason: {1}\n".format( 115 | self.status, self.reason 116 | ) 117 | if self.headers: 118 | error_message += "HTTP response headers: {0}\n".format(self.headers) 119 | 120 | if self.body: 121 | error_message += "HTTP response body: {0}\n".format(self.body) 122 | 123 | return error_message 124 | 125 | 126 | class NotFoundException(ApiException): 127 | 128 | def __init__(self, status=None, reason=None, http_resp=None): 129 | super(NotFoundException, self).__init__(status, reason, http_resp) 130 | 131 | 132 | class UnauthorizedException(ApiException): 133 | 134 | def __init__(self, status=None, reason=None, http_resp=None): 135 | super(UnauthorizedException, self).__init__(status, reason, http_resp) 136 | 137 | 138 | class ForbiddenException(ApiException): 139 | 140 | def __init__(self, status=None, reason=None, http_resp=None): 141 | super(ForbiddenException, self).__init__(status, reason, http_resp) 142 | 143 | 144 | class ServiceException(ApiException): 145 | 146 | def __init__(self, status=None, reason=None, http_resp=None): 147 | super(ServiceException, self).__init__(status, reason, http_resp) 148 | 149 | 150 | def render_path(path_to_item): 151 | """Returns a string representation of a path""" 152 | result = "" 153 | for pth in path_to_item: 154 | if isinstance(pth, int): 155 | result += "[{0}]".format(pth) 156 | else: 157 | result += "['{0}']".format(pth) 158 | return result 159 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/__init__.py: -------------------------------------------------------------------------------- 1 | # we can not import model classes here because that would create a circular 2 | # reference which would not work in python2 3 | # do not import all models into this module because that uses a lot of memory and stack frames 4 | # if you need the ability to import all models from one package, import them with 5 | # from deutschland.DashboardDeutschland.models import ModelA, ModelB 6 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/geo.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.exceptions import ApiAttributeError 15 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 16 | ApiTypeError, 17 | ModelComposed, 18 | ModelNormal, 19 | ModelSimple, 20 | OpenApiModel, 21 | cached_property, 22 | change_keys_js_to_python, 23 | convert_js_args_to_python_args, 24 | date, 25 | datetime, 26 | file_type, 27 | none_type, 28 | validate_get_composed_info, 29 | ) 30 | 31 | 32 | def lazy_import(): 33 | from deutschland.DashboardDeutschland.model.geo_crs import GeoCrs 34 | 35 | globals()["GeoCrs"] = GeoCrs 36 | 37 | 38 | class Geo(ModelNormal): 39 | """NOTE: This class is auto generated by OpenAPI Generator. 40 | Ref: https://openapi-generator.tech 41 | 42 | Do not edit the class manually. 43 | 44 | Attributes: 45 | allowed_values (dict): The key is the tuple path to the attribute 46 | and the for var_name this is (var_name,). The value is a dict 47 | with a capitalized key describing the allowed value and an allowed 48 | value. These dicts store the allowed enum values. 49 | attribute_map (dict): The key is attribute name 50 | and the value is json key in definition. 51 | discriminator_value_class_map (dict): A dict to go from the discriminator 52 | variable value to the discriminator class name. 53 | validations (dict): The key is the tuple path to the attribute 54 | and the for var_name this is (var_name,). The value is a dict 55 | that stores validations for max_length, min_length, max_items, 56 | min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 57 | inclusive_minimum, and regex. 58 | additional_properties_type (tuple): A tuple of classes accepted 59 | as additional properties values. 60 | """ 61 | 62 | allowed_values = {} 63 | 64 | validations = {} 65 | 66 | @cached_property 67 | def additional_properties_type(): 68 | """ 69 | This must be a method because a model may have properties that are 70 | of type self, this must run after the class is loaded 71 | """ 72 | lazy_import() 73 | return ( 74 | bool, 75 | date, 76 | datetime, 77 | dict, 78 | float, 79 | int, 80 | list, 81 | str, 82 | none_type, 83 | ) # noqa: E501 84 | 85 | _nullable = False 86 | 87 | @cached_property 88 | def openapi_types(): 89 | """ 90 | This must be a method because a model may have properties that are 91 | of type self, this must run after the class is loaded 92 | 93 | Returns 94 | openapi_types (dict): The key is attribute name 95 | and the value is attribute type. 96 | """ 97 | lazy_import() 98 | return { 99 | "type": (str,), # noqa: E501 100 | "name": (str,), # noqa: E501 101 | "title": (str,), # noqa: E501 102 | "version": (str,), # noqa: E501 103 | "copyright_short": (str,), # noqa: E501 104 | "copyright_url": (str,), # noqa: E501 105 | "crs": (GeoCrs,), # noqa: E501 106 | "features": ( 107 | [{str: (bool, date, datetime, dict, float, int, list, str, none_type)}], 108 | ), # noqa: E501 109 | } 110 | 111 | @cached_property 112 | def discriminator(): 113 | return None 114 | 115 | attribute_map = { 116 | "type": "type", # noqa: E501 117 | "name": "name", # noqa: E501 118 | "title": "title", # noqa: E501 119 | "version": "version", # noqa: E501 120 | "copyright_short": "copyrightShort", # noqa: E501 121 | "copyright_url": "copyrightUrl", # noqa: E501 122 | "crs": "crs", # noqa: E501 123 | "features": "features", # noqa: E501 124 | } 125 | 126 | read_only_vars = {} 127 | 128 | _composed_schemas = {} 129 | 130 | @classmethod 131 | @convert_js_args_to_python_args 132 | def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 133 | """Geo - a model defined in OpenAPI 134 | 135 | Keyword Args: 136 | _check_type (bool): if True, values for parameters in openapi_types 137 | will be type checked and a TypeError will be 138 | raised if the wrong type is input. 139 | Defaults to True 140 | _path_to_item (tuple/list): This is a list of keys or values to 141 | drill down to the model in received_data 142 | when deserializing a response 143 | _spec_property_naming (bool): True if the variable names in the input data 144 | are serialized names, as specified in the OpenAPI document. 145 | False if the variable names in the input data 146 | are pythonic names, e.g. snake case (default) 147 | _configuration (Configuration): the instance to use when 148 | deserializing a file_type parameter. 149 | If passed, type conversion is attempted 150 | If omitted no type conversion is done. 151 | _visited_composed_classes (tuple): This stores a tuple of 152 | classes that we have traveled through so that 153 | if we see that class again we will not use its 154 | discriminator again. 155 | When traveling through a discriminator, the 156 | composed schema that is 157 | is traveled through is added to this set. 158 | For example if Animal has a discriminator 159 | petType and we pass in "Dog", and the class Dog 160 | allOf includes Animal, we move through Animal 161 | once using the discriminator, and pick Dog. 162 | Then in Dog, we will make an instance of the 163 | Animal class but this time we won't travel 164 | through its discriminator because we passed in 165 | _visited_composed_classes = (Animal,) 166 | type (str): [optional] # noqa: E501 167 | name (str): [optional] # noqa: E501 168 | title (str): [optional] # noqa: E501 169 | version (str): [optional] # noqa: E501 170 | copyright_short (str): [optional] # noqa: E501 171 | copyright_url (str): [optional] # noqa: E501 172 | crs (GeoCrs): [optional] # noqa: E501 173 | features ([{str: (bool, date, datetime, dict, float, int, list, str, none_type)}]): [optional] # noqa: E501 174 | """ 175 | 176 | _check_type = kwargs.pop("_check_type", True) 177 | _spec_property_naming = kwargs.pop("_spec_property_naming", True) 178 | _path_to_item = kwargs.pop("_path_to_item", ()) 179 | _configuration = kwargs.pop("_configuration", None) 180 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 181 | 182 | self = super(OpenApiModel, cls).__new__(cls) 183 | 184 | if args: 185 | for arg in args: 186 | if isinstance(arg, dict): 187 | kwargs.update(arg) 188 | else: 189 | raise ApiTypeError( 190 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 191 | % ( 192 | args, 193 | self.__class__.__name__, 194 | ), 195 | path_to_item=_path_to_item, 196 | valid_classes=(self.__class__,), 197 | ) 198 | 199 | self._data_store = {} 200 | self._check_type = _check_type 201 | self._spec_property_naming = _spec_property_naming 202 | self._path_to_item = _path_to_item 203 | self._configuration = _configuration 204 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 205 | 206 | for var_name, var_value in kwargs.items(): 207 | if ( 208 | var_name not in self.attribute_map 209 | and self._configuration is not None 210 | and self._configuration.discard_unknown_keys 211 | and self.additional_properties_type is None 212 | ): 213 | # discard variable. 214 | continue 215 | setattr(self, var_name, var_value) 216 | return self 217 | 218 | required_properties = set( 219 | [ 220 | "_data_store", 221 | "_check_type", 222 | "_spec_property_naming", 223 | "_path_to_item", 224 | "_configuration", 225 | "_visited_composed_classes", 226 | ] 227 | ) 228 | 229 | @convert_js_args_to_python_args 230 | def __init__(self, *args, **kwargs): # noqa: E501 231 | """Geo - a model defined in OpenAPI 232 | 233 | Keyword Args: 234 | _check_type (bool): if True, values for parameters in openapi_types 235 | will be type checked and a TypeError will be 236 | raised if the wrong type is input. 237 | Defaults to True 238 | _path_to_item (tuple/list): This is a list of keys or values to 239 | drill down to the model in received_data 240 | when deserializing a response 241 | _spec_property_naming (bool): True if the variable names in the input data 242 | are serialized names, as specified in the OpenAPI document. 243 | False if the variable names in the input data 244 | are pythonic names, e.g. snake case (default) 245 | _configuration (Configuration): the instance to use when 246 | deserializing a file_type parameter. 247 | If passed, type conversion is attempted 248 | If omitted no type conversion is done. 249 | _visited_composed_classes (tuple): This stores a tuple of 250 | classes that we have traveled through so that 251 | if we see that class again we will not use its 252 | discriminator again. 253 | When traveling through a discriminator, the 254 | composed schema that is 255 | is traveled through is added to this set. 256 | For example if Animal has a discriminator 257 | petType and we pass in "Dog", and the class Dog 258 | allOf includes Animal, we move through Animal 259 | once using the discriminator, and pick Dog. 260 | Then in Dog, we will make an instance of the 261 | Animal class but this time we won't travel 262 | through its discriminator because we passed in 263 | _visited_composed_classes = (Animal,) 264 | type (str): [optional] # noqa: E501 265 | name (str): [optional] # noqa: E501 266 | title (str): [optional] # noqa: E501 267 | version (str): [optional] # noqa: E501 268 | copyright_short (str): [optional] # noqa: E501 269 | copyright_url (str): [optional] # noqa: E501 270 | crs (GeoCrs): [optional] # noqa: E501 271 | features ([{str: (bool, date, datetime, dict, float, int, list, str, none_type)}]): [optional] # noqa: E501 272 | """ 273 | 274 | _check_type = kwargs.pop("_check_type", True) 275 | _spec_property_naming = kwargs.pop("_spec_property_naming", False) 276 | _path_to_item = kwargs.pop("_path_to_item", ()) 277 | _configuration = kwargs.pop("_configuration", None) 278 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 279 | 280 | if args: 281 | for arg in args: 282 | if isinstance(arg, dict): 283 | kwargs.update(arg) 284 | else: 285 | raise ApiTypeError( 286 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 287 | % ( 288 | args, 289 | self.__class__.__name__, 290 | ), 291 | path_to_item=_path_to_item, 292 | valid_classes=(self.__class__,), 293 | ) 294 | 295 | self._data_store = {} 296 | self._check_type = _check_type 297 | self._spec_property_naming = _spec_property_naming 298 | self._path_to_item = _path_to_item 299 | self._configuration = _configuration 300 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 301 | 302 | for var_name, var_value in kwargs.items(): 303 | if ( 304 | var_name not in self.attribute_map 305 | and self._configuration is not None 306 | and self._configuration.discard_unknown_keys 307 | and self.additional_properties_type is None 308 | ): 309 | # discard variable. 310 | continue 311 | setattr(self, var_name, var_value) 312 | if var_name in self.read_only_vars: 313 | raise ApiAttributeError( 314 | f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 315 | f"class with read only attributes." 316 | ) 317 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/geo_crs.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.exceptions import ApiAttributeError 15 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 16 | ApiTypeError, 17 | ModelComposed, 18 | ModelNormal, 19 | ModelSimple, 20 | OpenApiModel, 21 | cached_property, 22 | change_keys_js_to_python, 23 | convert_js_args_to_python_args, 24 | date, 25 | datetime, 26 | file_type, 27 | none_type, 28 | validate_get_composed_info, 29 | ) 30 | 31 | 32 | def lazy_import(): 33 | from deutschland.DashboardDeutschland.model.geo_crs_properties import ( 34 | GeoCrsProperties, 35 | ) 36 | 37 | globals()["GeoCrsProperties"] = GeoCrsProperties 38 | 39 | 40 | class GeoCrs(ModelNormal): 41 | """NOTE: This class is auto generated by OpenAPI Generator. 42 | Ref: https://openapi-generator.tech 43 | 44 | Do not edit the class manually. 45 | 46 | Attributes: 47 | allowed_values (dict): The key is the tuple path to the attribute 48 | and the for var_name this is (var_name,). The value is a dict 49 | with a capitalized key describing the allowed value and an allowed 50 | value. These dicts store the allowed enum values. 51 | attribute_map (dict): The key is attribute name 52 | and the value is json key in definition. 53 | discriminator_value_class_map (dict): A dict to go from the discriminator 54 | variable value to the discriminator class name. 55 | validations (dict): The key is the tuple path to the attribute 56 | and the for var_name this is (var_name,). The value is a dict 57 | that stores validations for max_length, min_length, max_items, 58 | min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 59 | inclusive_minimum, and regex. 60 | additional_properties_type (tuple): A tuple of classes accepted 61 | as additional properties values. 62 | """ 63 | 64 | allowed_values = {} 65 | 66 | validations = {} 67 | 68 | @cached_property 69 | def additional_properties_type(): 70 | """ 71 | This must be a method because a model may have properties that are 72 | of type self, this must run after the class is loaded 73 | """ 74 | lazy_import() 75 | return ( 76 | bool, 77 | date, 78 | datetime, 79 | dict, 80 | float, 81 | int, 82 | list, 83 | str, 84 | none_type, 85 | ) # noqa: E501 86 | 87 | _nullable = False 88 | 89 | @cached_property 90 | def openapi_types(): 91 | """ 92 | This must be a method because a model may have properties that are 93 | of type self, this must run after the class is loaded 94 | 95 | Returns 96 | openapi_types (dict): The key is attribute name 97 | and the value is attribute type. 98 | """ 99 | lazy_import() 100 | return { 101 | "type": (str,), # noqa: E501 102 | "properties": (GeoCrsProperties,), # noqa: E501 103 | } 104 | 105 | @cached_property 106 | def discriminator(): 107 | return None 108 | 109 | attribute_map = { 110 | "type": "type", # noqa: E501 111 | "properties": "properties", # noqa: E501 112 | } 113 | 114 | read_only_vars = {} 115 | 116 | _composed_schemas = {} 117 | 118 | @classmethod 119 | @convert_js_args_to_python_args 120 | def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 121 | """GeoCrs - a model defined in OpenAPI 122 | 123 | Keyword Args: 124 | _check_type (bool): if True, values for parameters in openapi_types 125 | will be type checked and a TypeError will be 126 | raised if the wrong type is input. 127 | Defaults to True 128 | _path_to_item (tuple/list): This is a list of keys or values to 129 | drill down to the model in received_data 130 | when deserializing a response 131 | _spec_property_naming (bool): True if the variable names in the input data 132 | are serialized names, as specified in the OpenAPI document. 133 | False if the variable names in the input data 134 | are pythonic names, e.g. snake case (default) 135 | _configuration (Configuration): the instance to use when 136 | deserializing a file_type parameter. 137 | If passed, type conversion is attempted 138 | If omitted no type conversion is done. 139 | _visited_composed_classes (tuple): This stores a tuple of 140 | classes that we have traveled through so that 141 | if we see that class again we will not use its 142 | discriminator again. 143 | When traveling through a discriminator, the 144 | composed schema that is 145 | is traveled through is added to this set. 146 | For example if Animal has a discriminator 147 | petType and we pass in "Dog", and the class Dog 148 | allOf includes Animal, we move through Animal 149 | once using the discriminator, and pick Dog. 150 | Then in Dog, we will make an instance of the 151 | Animal class but this time we won't travel 152 | through its discriminator because we passed in 153 | _visited_composed_classes = (Animal,) 154 | type (str): [optional] # noqa: E501 155 | properties (GeoCrsProperties): [optional] # noqa: E501 156 | """ 157 | 158 | _check_type = kwargs.pop("_check_type", True) 159 | _spec_property_naming = kwargs.pop("_spec_property_naming", True) 160 | _path_to_item = kwargs.pop("_path_to_item", ()) 161 | _configuration = kwargs.pop("_configuration", None) 162 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 163 | 164 | self = super(OpenApiModel, cls).__new__(cls) 165 | 166 | if args: 167 | for arg in args: 168 | if isinstance(arg, dict): 169 | kwargs.update(arg) 170 | else: 171 | raise ApiTypeError( 172 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 173 | % ( 174 | args, 175 | self.__class__.__name__, 176 | ), 177 | path_to_item=_path_to_item, 178 | valid_classes=(self.__class__,), 179 | ) 180 | 181 | self._data_store = {} 182 | self._check_type = _check_type 183 | self._spec_property_naming = _spec_property_naming 184 | self._path_to_item = _path_to_item 185 | self._configuration = _configuration 186 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 187 | 188 | for var_name, var_value in kwargs.items(): 189 | if ( 190 | var_name not in self.attribute_map 191 | and self._configuration is not None 192 | and self._configuration.discard_unknown_keys 193 | and self.additional_properties_type is None 194 | ): 195 | # discard variable. 196 | continue 197 | setattr(self, var_name, var_value) 198 | return self 199 | 200 | required_properties = set( 201 | [ 202 | "_data_store", 203 | "_check_type", 204 | "_spec_property_naming", 205 | "_path_to_item", 206 | "_configuration", 207 | "_visited_composed_classes", 208 | ] 209 | ) 210 | 211 | @convert_js_args_to_python_args 212 | def __init__(self, *args, **kwargs): # noqa: E501 213 | """GeoCrs - a model defined in OpenAPI 214 | 215 | Keyword Args: 216 | _check_type (bool): if True, values for parameters in openapi_types 217 | will be type checked and a TypeError will be 218 | raised if the wrong type is input. 219 | Defaults to True 220 | _path_to_item (tuple/list): This is a list of keys or values to 221 | drill down to the model in received_data 222 | when deserializing a response 223 | _spec_property_naming (bool): True if the variable names in the input data 224 | are serialized names, as specified in the OpenAPI document. 225 | False if the variable names in the input data 226 | are pythonic names, e.g. snake case (default) 227 | _configuration (Configuration): the instance to use when 228 | deserializing a file_type parameter. 229 | If passed, type conversion is attempted 230 | If omitted no type conversion is done. 231 | _visited_composed_classes (tuple): This stores a tuple of 232 | classes that we have traveled through so that 233 | if we see that class again we will not use its 234 | discriminator again. 235 | When traveling through a discriminator, the 236 | composed schema that is 237 | is traveled through is added to this set. 238 | For example if Animal has a discriminator 239 | petType and we pass in "Dog", and the class Dog 240 | allOf includes Animal, we move through Animal 241 | once using the discriminator, and pick Dog. 242 | Then in Dog, we will make an instance of the 243 | Animal class but this time we won't travel 244 | through its discriminator because we passed in 245 | _visited_composed_classes = (Animal,) 246 | type (str): [optional] # noqa: E501 247 | properties (GeoCrsProperties): [optional] # noqa: E501 248 | """ 249 | 250 | _check_type = kwargs.pop("_check_type", True) 251 | _spec_property_naming = kwargs.pop("_spec_property_naming", False) 252 | _path_to_item = kwargs.pop("_path_to_item", ()) 253 | _configuration = kwargs.pop("_configuration", None) 254 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 255 | 256 | if args: 257 | for arg in args: 258 | if isinstance(arg, dict): 259 | kwargs.update(arg) 260 | else: 261 | raise ApiTypeError( 262 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 263 | % ( 264 | args, 265 | self.__class__.__name__, 266 | ), 267 | path_to_item=_path_to_item, 268 | valid_classes=(self.__class__,), 269 | ) 270 | 271 | self._data_store = {} 272 | self._check_type = _check_type 273 | self._spec_property_naming = _spec_property_naming 274 | self._path_to_item = _path_to_item 275 | self._configuration = _configuration 276 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 277 | 278 | for var_name, var_value in kwargs.items(): 279 | if ( 280 | var_name not in self.attribute_map 281 | and self._configuration is not None 282 | and self._configuration.discard_unknown_keys 283 | and self.additional_properties_type is None 284 | ): 285 | # discard variable. 286 | continue 287 | setattr(self, var_name, var_value) 288 | if var_name in self.read_only_vars: 289 | raise ApiAttributeError( 290 | f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 291 | f"class with read only attributes." 292 | ) 293 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/geo_crs_properties.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.exceptions import ApiAttributeError 15 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 16 | ApiTypeError, 17 | ModelComposed, 18 | ModelNormal, 19 | ModelSimple, 20 | OpenApiModel, 21 | cached_property, 22 | change_keys_js_to_python, 23 | convert_js_args_to_python_args, 24 | date, 25 | datetime, 26 | file_type, 27 | none_type, 28 | validate_get_composed_info, 29 | ) 30 | 31 | 32 | class GeoCrsProperties(ModelNormal): 33 | """NOTE: This class is auto generated by OpenAPI Generator. 34 | Ref: https://openapi-generator.tech 35 | 36 | Do not edit the class manually. 37 | 38 | Attributes: 39 | allowed_values (dict): The key is the tuple path to the attribute 40 | and the for var_name this is (var_name,). The value is a dict 41 | with a capitalized key describing the allowed value and an allowed 42 | value. These dicts store the allowed enum values. 43 | attribute_map (dict): The key is attribute name 44 | and the value is json key in definition. 45 | discriminator_value_class_map (dict): A dict to go from the discriminator 46 | variable value to the discriminator class name. 47 | validations (dict): The key is the tuple path to the attribute 48 | and the for var_name this is (var_name,). The value is a dict 49 | that stores validations for max_length, min_length, max_items, 50 | min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 51 | inclusive_minimum, and regex. 52 | additional_properties_type (tuple): A tuple of classes accepted 53 | as additional properties values. 54 | """ 55 | 56 | allowed_values = {} 57 | 58 | validations = {} 59 | 60 | @cached_property 61 | def additional_properties_type(): 62 | """ 63 | This must be a method because a model may have properties that are 64 | of type self, this must run after the class is loaded 65 | """ 66 | return ( 67 | bool, 68 | date, 69 | datetime, 70 | dict, 71 | float, 72 | int, 73 | list, 74 | str, 75 | none_type, 76 | ) # noqa: E501 77 | 78 | _nullable = False 79 | 80 | @cached_property 81 | def openapi_types(): 82 | """ 83 | This must be a method because a model may have properties that are 84 | of type self, this must run after the class is loaded 85 | 86 | Returns 87 | openapi_types (dict): The key is attribute name 88 | and the value is attribute type. 89 | """ 90 | return { 91 | "name": (str,), # noqa: E501 92 | } 93 | 94 | @cached_property 95 | def discriminator(): 96 | return None 97 | 98 | attribute_map = { 99 | "name": "name", # noqa: E501 100 | } 101 | 102 | read_only_vars = {} 103 | 104 | _composed_schemas = {} 105 | 106 | @classmethod 107 | @convert_js_args_to_python_args 108 | def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 109 | """GeoCrsProperties - a model defined in OpenAPI 110 | 111 | Keyword Args: 112 | _check_type (bool): if True, values for parameters in openapi_types 113 | will be type checked and a TypeError will be 114 | raised if the wrong type is input. 115 | Defaults to True 116 | _path_to_item (tuple/list): This is a list of keys or values to 117 | drill down to the model in received_data 118 | when deserializing a response 119 | _spec_property_naming (bool): True if the variable names in the input data 120 | are serialized names, as specified in the OpenAPI document. 121 | False if the variable names in the input data 122 | are pythonic names, e.g. snake case (default) 123 | _configuration (Configuration): the instance to use when 124 | deserializing a file_type parameter. 125 | If passed, type conversion is attempted 126 | If omitted no type conversion is done. 127 | _visited_composed_classes (tuple): This stores a tuple of 128 | classes that we have traveled through so that 129 | if we see that class again we will not use its 130 | discriminator again. 131 | When traveling through a discriminator, the 132 | composed schema that is 133 | is traveled through is added to this set. 134 | For example if Animal has a discriminator 135 | petType and we pass in "Dog", and the class Dog 136 | allOf includes Animal, we move through Animal 137 | once using the discriminator, and pick Dog. 138 | Then in Dog, we will make an instance of the 139 | Animal class but this time we won't travel 140 | through its discriminator because we passed in 141 | _visited_composed_classes = (Animal,) 142 | name (str): [optional] # noqa: E501 143 | """ 144 | 145 | _check_type = kwargs.pop("_check_type", True) 146 | _spec_property_naming = kwargs.pop("_spec_property_naming", True) 147 | _path_to_item = kwargs.pop("_path_to_item", ()) 148 | _configuration = kwargs.pop("_configuration", None) 149 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 150 | 151 | self = super(OpenApiModel, cls).__new__(cls) 152 | 153 | if args: 154 | for arg in args: 155 | if isinstance(arg, dict): 156 | kwargs.update(arg) 157 | else: 158 | raise ApiTypeError( 159 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 160 | % ( 161 | args, 162 | self.__class__.__name__, 163 | ), 164 | path_to_item=_path_to_item, 165 | valid_classes=(self.__class__,), 166 | ) 167 | 168 | self._data_store = {} 169 | self._check_type = _check_type 170 | self._spec_property_naming = _spec_property_naming 171 | self._path_to_item = _path_to_item 172 | self._configuration = _configuration 173 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 174 | 175 | for var_name, var_value in kwargs.items(): 176 | if ( 177 | var_name not in self.attribute_map 178 | and self._configuration is not None 179 | and self._configuration.discard_unknown_keys 180 | and self.additional_properties_type is None 181 | ): 182 | # discard variable. 183 | continue 184 | setattr(self, var_name, var_value) 185 | return self 186 | 187 | required_properties = set( 188 | [ 189 | "_data_store", 190 | "_check_type", 191 | "_spec_property_naming", 192 | "_path_to_item", 193 | "_configuration", 194 | "_visited_composed_classes", 195 | ] 196 | ) 197 | 198 | @convert_js_args_to_python_args 199 | def __init__(self, *args, **kwargs): # noqa: E501 200 | """GeoCrsProperties - a model defined in OpenAPI 201 | 202 | Keyword Args: 203 | _check_type (bool): if True, values for parameters in openapi_types 204 | will be type checked and a TypeError will be 205 | raised if the wrong type is input. 206 | Defaults to True 207 | _path_to_item (tuple/list): This is a list of keys or values to 208 | drill down to the model in received_data 209 | when deserializing a response 210 | _spec_property_naming (bool): True if the variable names in the input data 211 | are serialized names, as specified in the OpenAPI document. 212 | False if the variable names in the input data 213 | are pythonic names, e.g. snake case (default) 214 | _configuration (Configuration): the instance to use when 215 | deserializing a file_type parameter. 216 | If passed, type conversion is attempted 217 | If omitted no type conversion is done. 218 | _visited_composed_classes (tuple): This stores a tuple of 219 | classes that we have traveled through so that 220 | if we see that class again we will not use its 221 | discriminator again. 222 | When traveling through a discriminator, the 223 | composed schema that is 224 | is traveled through is added to this set. 225 | For example if Animal has a discriminator 226 | petType and we pass in "Dog", and the class Dog 227 | allOf includes Animal, we move through Animal 228 | once using the discriminator, and pick Dog. 229 | Then in Dog, we will make an instance of the 230 | Animal class but this time we won't travel 231 | through its discriminator because we passed in 232 | _visited_composed_classes = (Animal,) 233 | name (str): [optional] # noqa: E501 234 | """ 235 | 236 | _check_type = kwargs.pop("_check_type", True) 237 | _spec_property_naming = kwargs.pop("_spec_property_naming", False) 238 | _path_to_item = kwargs.pop("_path_to_item", ()) 239 | _configuration = kwargs.pop("_configuration", None) 240 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 241 | 242 | if args: 243 | for arg in args: 244 | if isinstance(arg, dict): 245 | kwargs.update(arg) 246 | else: 247 | raise ApiTypeError( 248 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 249 | % ( 250 | args, 251 | self.__class__.__name__, 252 | ), 253 | path_to_item=_path_to_item, 254 | valid_classes=(self.__class__,), 255 | ) 256 | 257 | self._data_store = {} 258 | self._check_type = _check_type 259 | self._spec_property_naming = _spec_property_naming 260 | self._path_to_item = _path_to_item 261 | self._configuration = _configuration 262 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 263 | 264 | for var_name, var_value in kwargs.items(): 265 | if ( 266 | var_name not in self.attribute_map 267 | and self._configuration is not None 268 | and self._configuration.discard_unknown_keys 269 | and self.additional_properties_type is None 270 | ): 271 | # discard variable. 272 | continue 273 | setattr(self, var_name, var_value) 274 | if var_name in self.read_only_vars: 275 | raise ApiAttributeError( 276 | f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 277 | f"class with read only attributes." 278 | ) 279 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/get.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.exceptions import ApiAttributeError 15 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 16 | ApiTypeError, 17 | ModelComposed, 18 | ModelNormal, 19 | ModelSimple, 20 | OpenApiModel, 21 | cached_property, 22 | change_keys_js_to_python, 23 | convert_js_args_to_python_args, 24 | date, 25 | datetime, 26 | file_type, 27 | none_type, 28 | validate_get_composed_info, 29 | ) 30 | 31 | 32 | def lazy_import(): 33 | from deutschland.DashboardDeutschland.model.get_category import GetCategory 34 | from deutschland.DashboardDeutschland.model.get_layout_tiles_inner import ( 35 | GetLayoutTilesInner, 36 | ) 37 | 38 | globals()["GetCategory"] = GetCategory 39 | globals()["GetLayoutTilesInner"] = GetLayoutTilesInner 40 | 41 | 42 | class Get(ModelNormal): 43 | """NOTE: This class is auto generated by OpenAPI Generator. 44 | Ref: https://openapi-generator.tech 45 | 46 | Do not edit the class manually. 47 | 48 | Attributes: 49 | allowed_values (dict): The key is the tuple path to the attribute 50 | and the for var_name this is (var_name,). The value is a dict 51 | with a capitalized key describing the allowed value and an allowed 52 | value. These dicts store the allowed enum values. 53 | attribute_map (dict): The key is attribute name 54 | and the value is json key in definition. 55 | discriminator_value_class_map (dict): A dict to go from the discriminator 56 | variable value to the discriminator class name. 57 | validations (dict): The key is the tuple path to the attribute 58 | and the for var_name this is (var_name,). The value is a dict 59 | that stores validations for max_length, min_length, max_items, 60 | min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 61 | inclusive_minimum, and regex. 62 | additional_properties_type (tuple): A tuple of classes accepted 63 | as additional properties values. 64 | """ 65 | 66 | allowed_values = {} 67 | 68 | validations = {} 69 | 70 | @cached_property 71 | def additional_properties_type(): 72 | """ 73 | This must be a method because a model may have properties that are 74 | of type self, this must run after the class is loaded 75 | """ 76 | lazy_import() 77 | return ( 78 | bool, 79 | date, 80 | datetime, 81 | dict, 82 | float, 83 | int, 84 | list, 85 | str, 86 | none_type, 87 | ) # noqa: E501 88 | 89 | _nullable = False 90 | 91 | @cached_property 92 | def openapi_types(): 93 | """ 94 | This must be a method because a model may have properties that are 95 | of type self, this must run after the class is loaded 96 | 97 | Returns 98 | openapi_types (dict): The key is attribute name 99 | and the value is attribute type. 100 | """ 101 | lazy_import() 102 | return { 103 | "id": (str,), # noqa: E501 104 | "name": (str,), # noqa: E501 105 | "name_en": (str,), # noqa: E501 106 | "description": (str,), # noqa: E501 107 | "description_en": (str,), # noqa: E501 108 | "teaser": (str,), # noqa: E501 109 | "teaser_en": (str,), # noqa: E501 110 | "conclusion": (str,), # noqa: E501 111 | "conclusion_en": (str,), # noqa: E501 112 | "category": (GetCategory,), # noqa: E501 113 | "tags": ( 114 | [{str: (bool, date, datetime, dict, float, int, list, str, none_type)}], 115 | ), # noqa: E501 116 | "image": (str,), # noqa: E501 117 | "clicks": (int,), # noqa: E501 118 | "order_id": (int,), # noqa: E501 119 | "trending": (bool,), # noqa: E501 120 | "top": (bool,), # noqa: E501 121 | "layout_tiles": ([GetLayoutTilesInner],), # noqa: E501 122 | "layout_mode": (str,), # noqa: E501 123 | } 124 | 125 | @cached_property 126 | def discriminator(): 127 | return None 128 | 129 | attribute_map = { 130 | "id": "id", # noqa: E501 131 | "name": "name", # noqa: E501 132 | "name_en": "nameEn", # noqa: E501 133 | "description": "description", # noqa: E501 134 | "description_en": "descriptionEn", # noqa: E501 135 | "teaser": "teaser", # noqa: E501 136 | "teaser_en": "teaserEn", # noqa: E501 137 | "conclusion": "conclusion", # noqa: E501 138 | "conclusion_en": "conclusionEn", # noqa: E501 139 | "category": "category", # noqa: E501 140 | "tags": "tags", # noqa: E501 141 | "image": "image", # noqa: E501 142 | "clicks": "clicks", # noqa: E501 143 | "order_id": "orderId", # noqa: E501 144 | "trending": "trending", # noqa: E501 145 | "top": "top", # noqa: E501 146 | "layout_tiles": "layoutTiles", # noqa: E501 147 | "layout_mode": "layoutMode", # noqa: E501 148 | } 149 | 150 | read_only_vars = {} 151 | 152 | _composed_schemas = {} 153 | 154 | @classmethod 155 | @convert_js_args_to_python_args 156 | def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 157 | """Get - a model defined in OpenAPI 158 | 159 | Keyword Args: 160 | _check_type (bool): if True, values for parameters in openapi_types 161 | will be type checked and a TypeError will be 162 | raised if the wrong type is input. 163 | Defaults to True 164 | _path_to_item (tuple/list): This is a list of keys or values to 165 | drill down to the model in received_data 166 | when deserializing a response 167 | _spec_property_naming (bool): True if the variable names in the input data 168 | are serialized names, as specified in the OpenAPI document. 169 | False if the variable names in the input data 170 | are pythonic names, e.g. snake case (default) 171 | _configuration (Configuration): the instance to use when 172 | deserializing a file_type parameter. 173 | If passed, type conversion is attempted 174 | If omitted no type conversion is done. 175 | _visited_composed_classes (tuple): This stores a tuple of 176 | classes that we have traveled through so that 177 | if we see that class again we will not use its 178 | discriminator again. 179 | When traveling through a discriminator, the 180 | composed schema that is 181 | is traveled through is added to this set. 182 | For example if Animal has a discriminator 183 | petType and we pass in "Dog", and the class Dog 184 | allOf includes Animal, we move through Animal 185 | once using the discriminator, and pick Dog. 186 | Then in Dog, we will make an instance of the 187 | Animal class but this time we won't travel 188 | through its discriminator because we passed in 189 | _visited_composed_classes = (Animal,) 190 | id (str): [optional] # noqa: E501 191 | name (str): [optional] # noqa: E501 192 | name_en (str): [optional] # noqa: E501 193 | description (str): [optional] # noqa: E501 194 | description_en (str): [optional] # noqa: E501 195 | teaser (str): [optional] # noqa: E501 196 | teaser_en (str): [optional] # noqa: E501 197 | conclusion (str): [optional] # noqa: E501 198 | conclusion_en (str): [optional] # noqa: E501 199 | category (GetCategory): [optional] # noqa: E501 200 | tags ([{str: (bool, date, datetime, dict, float, int, list, str, none_type)}]): [optional] # noqa: E501 201 | image (str): [optional] # noqa: E501 202 | clicks (int): [optional] # noqa: E501 203 | order_id (int): [optional] # noqa: E501 204 | trending (bool): [optional] # noqa: E501 205 | top (bool): [optional] # noqa: E501 206 | layout_tiles ([GetLayoutTilesInner]): [optional] # noqa: E501 207 | layout_mode (str): [optional] # noqa: E501 208 | """ 209 | 210 | _check_type = kwargs.pop("_check_type", True) 211 | _spec_property_naming = kwargs.pop("_spec_property_naming", True) 212 | _path_to_item = kwargs.pop("_path_to_item", ()) 213 | _configuration = kwargs.pop("_configuration", None) 214 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 215 | 216 | self = super(OpenApiModel, cls).__new__(cls) 217 | 218 | if args: 219 | for arg in args: 220 | if isinstance(arg, dict): 221 | kwargs.update(arg) 222 | else: 223 | raise ApiTypeError( 224 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 225 | % ( 226 | args, 227 | self.__class__.__name__, 228 | ), 229 | path_to_item=_path_to_item, 230 | valid_classes=(self.__class__,), 231 | ) 232 | 233 | self._data_store = {} 234 | self._check_type = _check_type 235 | self._spec_property_naming = _spec_property_naming 236 | self._path_to_item = _path_to_item 237 | self._configuration = _configuration 238 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 239 | 240 | for var_name, var_value in kwargs.items(): 241 | if ( 242 | var_name not in self.attribute_map 243 | and self._configuration is not None 244 | and self._configuration.discard_unknown_keys 245 | and self.additional_properties_type is None 246 | ): 247 | # discard variable. 248 | continue 249 | setattr(self, var_name, var_value) 250 | return self 251 | 252 | required_properties = set( 253 | [ 254 | "_data_store", 255 | "_check_type", 256 | "_spec_property_naming", 257 | "_path_to_item", 258 | "_configuration", 259 | "_visited_composed_classes", 260 | ] 261 | ) 262 | 263 | @convert_js_args_to_python_args 264 | def __init__(self, *args, **kwargs): # noqa: E501 265 | """Get - a model defined in OpenAPI 266 | 267 | Keyword Args: 268 | _check_type (bool): if True, values for parameters in openapi_types 269 | will be type checked and a TypeError will be 270 | raised if the wrong type is input. 271 | Defaults to True 272 | _path_to_item (tuple/list): This is a list of keys or values to 273 | drill down to the model in received_data 274 | when deserializing a response 275 | _spec_property_naming (bool): True if the variable names in the input data 276 | are serialized names, as specified in the OpenAPI document. 277 | False if the variable names in the input data 278 | are pythonic names, e.g. snake case (default) 279 | _configuration (Configuration): the instance to use when 280 | deserializing a file_type parameter. 281 | If passed, type conversion is attempted 282 | If omitted no type conversion is done. 283 | _visited_composed_classes (tuple): This stores a tuple of 284 | classes that we have traveled through so that 285 | if we see that class again we will not use its 286 | discriminator again. 287 | When traveling through a discriminator, the 288 | composed schema that is 289 | is traveled through is added to this set. 290 | For example if Animal has a discriminator 291 | petType and we pass in "Dog", and the class Dog 292 | allOf includes Animal, we move through Animal 293 | once using the discriminator, and pick Dog. 294 | Then in Dog, we will make an instance of the 295 | Animal class but this time we won't travel 296 | through its discriminator because we passed in 297 | _visited_composed_classes = (Animal,) 298 | id (str): [optional] # noqa: E501 299 | name (str): [optional] # noqa: E501 300 | name_en (str): [optional] # noqa: E501 301 | description (str): [optional] # noqa: E501 302 | description_en (str): [optional] # noqa: E501 303 | teaser (str): [optional] # noqa: E501 304 | teaser_en (str): [optional] # noqa: E501 305 | conclusion (str): [optional] # noqa: E501 306 | conclusion_en (str): [optional] # noqa: E501 307 | category (GetCategory): [optional] # noqa: E501 308 | tags ([{str: (bool, date, datetime, dict, float, int, list, str, none_type)}]): [optional] # noqa: E501 309 | image (str): [optional] # noqa: E501 310 | clicks (int): [optional] # noqa: E501 311 | order_id (int): [optional] # noqa: E501 312 | trending (bool): [optional] # noqa: E501 313 | top (bool): [optional] # noqa: E501 314 | layout_tiles ([GetLayoutTilesInner]): [optional] # noqa: E501 315 | layout_mode (str): [optional] # noqa: E501 316 | """ 317 | 318 | _check_type = kwargs.pop("_check_type", True) 319 | _spec_property_naming = kwargs.pop("_spec_property_naming", False) 320 | _path_to_item = kwargs.pop("_path_to_item", ()) 321 | _configuration = kwargs.pop("_configuration", None) 322 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 323 | 324 | if args: 325 | for arg in args: 326 | if isinstance(arg, dict): 327 | kwargs.update(arg) 328 | else: 329 | raise ApiTypeError( 330 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 331 | % ( 332 | args, 333 | self.__class__.__name__, 334 | ), 335 | path_to_item=_path_to_item, 336 | valid_classes=(self.__class__,), 337 | ) 338 | 339 | self._data_store = {} 340 | self._check_type = _check_type 341 | self._spec_property_naming = _spec_property_naming 342 | self._path_to_item = _path_to_item 343 | self._configuration = _configuration 344 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 345 | 346 | for var_name, var_value in kwargs.items(): 347 | if ( 348 | var_name not in self.attribute_map 349 | and self._configuration is not None 350 | and self._configuration.discard_unknown_keys 351 | and self.additional_properties_type is None 352 | ): 353 | # discard variable. 354 | continue 355 | setattr(self, var_name, var_value) 356 | if var_name in self.read_only_vars: 357 | raise ApiAttributeError( 358 | f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 359 | f"class with read only attributes." 360 | ) 361 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/get_category.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.exceptions import ApiAttributeError 15 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 16 | ApiTypeError, 17 | ModelComposed, 18 | ModelNormal, 19 | ModelSimple, 20 | OpenApiModel, 21 | cached_property, 22 | change_keys_js_to_python, 23 | convert_js_args_to_python_args, 24 | date, 25 | datetime, 26 | file_type, 27 | none_type, 28 | validate_get_composed_info, 29 | ) 30 | 31 | 32 | class GetCategory(ModelNormal): 33 | """NOTE: This class is auto generated by OpenAPI Generator. 34 | Ref: https://openapi-generator.tech 35 | 36 | Do not edit the class manually. 37 | 38 | Attributes: 39 | allowed_values (dict): The key is the tuple path to the attribute 40 | and the for var_name this is (var_name,). The value is a dict 41 | with a capitalized key describing the allowed value and an allowed 42 | value. These dicts store the allowed enum values. 43 | attribute_map (dict): The key is attribute name 44 | and the value is json key in definition. 45 | discriminator_value_class_map (dict): A dict to go from the discriminator 46 | variable value to the discriminator class name. 47 | validations (dict): The key is the tuple path to the attribute 48 | and the for var_name this is (var_name,). The value is a dict 49 | that stores validations for max_length, min_length, max_items, 50 | min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 51 | inclusive_minimum, and regex. 52 | additional_properties_type (tuple): A tuple of classes accepted 53 | as additional properties values. 54 | """ 55 | 56 | allowed_values = {} 57 | 58 | validations = {} 59 | 60 | @cached_property 61 | def additional_properties_type(): 62 | """ 63 | This must be a method because a model may have properties that are 64 | of type self, this must run after the class is loaded 65 | """ 66 | return ( 67 | bool, 68 | date, 69 | datetime, 70 | dict, 71 | float, 72 | int, 73 | list, 74 | str, 75 | none_type, 76 | ) # noqa: E501 77 | 78 | _nullable = False 79 | 80 | @cached_property 81 | def openapi_types(): 82 | """ 83 | This must be a method because a model may have properties that are 84 | of type self, this must run after the class is loaded 85 | 86 | Returns 87 | openapi_types (dict): The key is attribute name 88 | and the value is attribute type. 89 | """ 90 | return { 91 | "id": (str,), # noqa: E501 92 | "name": (str,), # noqa: E501 93 | "name_en": (str,), # noqa: E501 94 | "description": (str,), # noqa: E501 95 | "description_en": (str,), # noqa: E501 96 | "icon": (str,), # noqa: E501 97 | "view_box": (str,), # noqa: E501 98 | "icon_type": (str,), # noqa: E501 99 | "color": (str,), # noqa: E501 100 | "cat_index": (int,), # noqa: E501 101 | "image": (str,), # noqa: E501 102 | "alt": (str,), # noqa: E501 103 | } 104 | 105 | @cached_property 106 | def discriminator(): 107 | return None 108 | 109 | attribute_map = { 110 | "id": "id", # noqa: E501 111 | "name": "name", # noqa: E501 112 | "name_en": "nameEn", # noqa: E501 113 | "description": "description", # noqa: E501 114 | "description_en": "descriptionEn", # noqa: E501 115 | "icon": "icon", # noqa: E501 116 | "view_box": "viewBox", # noqa: E501 117 | "icon_type": "iconType", # noqa: E501 118 | "color": "color", # noqa: E501 119 | "cat_index": "catIndex", # noqa: E501 120 | "image": "image", # noqa: E501 121 | "alt": "alt", # noqa: E501 122 | } 123 | 124 | read_only_vars = {} 125 | 126 | _composed_schemas = {} 127 | 128 | @classmethod 129 | @convert_js_args_to_python_args 130 | def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 131 | """GetCategory - a model defined in OpenAPI 132 | 133 | Keyword Args: 134 | _check_type (bool): if True, values for parameters in openapi_types 135 | will be type checked and a TypeError will be 136 | raised if the wrong type is input. 137 | Defaults to True 138 | _path_to_item (tuple/list): This is a list of keys or values to 139 | drill down to the model in received_data 140 | when deserializing a response 141 | _spec_property_naming (bool): True if the variable names in the input data 142 | are serialized names, as specified in the OpenAPI document. 143 | False if the variable names in the input data 144 | are pythonic names, e.g. snake case (default) 145 | _configuration (Configuration): the instance to use when 146 | deserializing a file_type parameter. 147 | If passed, type conversion is attempted 148 | If omitted no type conversion is done. 149 | _visited_composed_classes (tuple): This stores a tuple of 150 | classes that we have traveled through so that 151 | if we see that class again we will not use its 152 | discriminator again. 153 | When traveling through a discriminator, the 154 | composed schema that is 155 | is traveled through is added to this set. 156 | For example if Animal has a discriminator 157 | petType and we pass in "Dog", and the class Dog 158 | allOf includes Animal, we move through Animal 159 | once using the discriminator, and pick Dog. 160 | Then in Dog, we will make an instance of the 161 | Animal class but this time we won't travel 162 | through its discriminator because we passed in 163 | _visited_composed_classes = (Animal,) 164 | id (str): [optional] # noqa: E501 165 | name (str): [optional] # noqa: E501 166 | name_en (str): [optional] # noqa: E501 167 | description (str): [optional] # noqa: E501 168 | description_en (str): [optional] # noqa: E501 169 | icon (str): [optional] # noqa: E501 170 | view_box (str): [optional] # noqa: E501 171 | icon_type (str): [optional] # noqa: E501 172 | color (str): [optional] # noqa: E501 173 | cat_index (int): [optional] # noqa: E501 174 | image (str): [optional] # noqa: E501 175 | alt (str): [optional] # noqa: E501 176 | """ 177 | 178 | _check_type = kwargs.pop("_check_type", True) 179 | _spec_property_naming = kwargs.pop("_spec_property_naming", True) 180 | _path_to_item = kwargs.pop("_path_to_item", ()) 181 | _configuration = kwargs.pop("_configuration", None) 182 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 183 | 184 | self = super(OpenApiModel, cls).__new__(cls) 185 | 186 | if args: 187 | for arg in args: 188 | if isinstance(arg, dict): 189 | kwargs.update(arg) 190 | else: 191 | raise ApiTypeError( 192 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 193 | % ( 194 | args, 195 | self.__class__.__name__, 196 | ), 197 | path_to_item=_path_to_item, 198 | valid_classes=(self.__class__,), 199 | ) 200 | 201 | self._data_store = {} 202 | self._check_type = _check_type 203 | self._spec_property_naming = _spec_property_naming 204 | self._path_to_item = _path_to_item 205 | self._configuration = _configuration 206 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 207 | 208 | for var_name, var_value in kwargs.items(): 209 | if ( 210 | var_name not in self.attribute_map 211 | and self._configuration is not None 212 | and self._configuration.discard_unknown_keys 213 | and self.additional_properties_type is None 214 | ): 215 | # discard variable. 216 | continue 217 | setattr(self, var_name, var_value) 218 | return self 219 | 220 | required_properties = set( 221 | [ 222 | "_data_store", 223 | "_check_type", 224 | "_spec_property_naming", 225 | "_path_to_item", 226 | "_configuration", 227 | "_visited_composed_classes", 228 | ] 229 | ) 230 | 231 | @convert_js_args_to_python_args 232 | def __init__(self, *args, **kwargs): # noqa: E501 233 | """GetCategory - a model defined in OpenAPI 234 | 235 | Keyword Args: 236 | _check_type (bool): if True, values for parameters in openapi_types 237 | will be type checked and a TypeError will be 238 | raised if the wrong type is input. 239 | Defaults to True 240 | _path_to_item (tuple/list): This is a list of keys or values to 241 | drill down to the model in received_data 242 | when deserializing a response 243 | _spec_property_naming (bool): True if the variable names in the input data 244 | are serialized names, as specified in the OpenAPI document. 245 | False if the variable names in the input data 246 | are pythonic names, e.g. snake case (default) 247 | _configuration (Configuration): the instance to use when 248 | deserializing a file_type parameter. 249 | If passed, type conversion is attempted 250 | If omitted no type conversion is done. 251 | _visited_composed_classes (tuple): This stores a tuple of 252 | classes that we have traveled through so that 253 | if we see that class again we will not use its 254 | discriminator again. 255 | When traveling through a discriminator, the 256 | composed schema that is 257 | is traveled through is added to this set. 258 | For example if Animal has a discriminator 259 | petType and we pass in "Dog", and the class Dog 260 | allOf includes Animal, we move through Animal 261 | once using the discriminator, and pick Dog. 262 | Then in Dog, we will make an instance of the 263 | Animal class but this time we won't travel 264 | through its discriminator because we passed in 265 | _visited_composed_classes = (Animal,) 266 | id (str): [optional] # noqa: E501 267 | name (str): [optional] # noqa: E501 268 | name_en (str): [optional] # noqa: E501 269 | description (str): [optional] # noqa: E501 270 | description_en (str): [optional] # noqa: E501 271 | icon (str): [optional] # noqa: E501 272 | view_box (str): [optional] # noqa: E501 273 | icon_type (str): [optional] # noqa: E501 274 | color (str): [optional] # noqa: E501 275 | cat_index (int): [optional] # noqa: E501 276 | image (str): [optional] # noqa: E501 277 | alt (str): [optional] # noqa: E501 278 | """ 279 | 280 | _check_type = kwargs.pop("_check_type", True) 281 | _spec_property_naming = kwargs.pop("_spec_property_naming", False) 282 | _path_to_item = kwargs.pop("_path_to_item", ()) 283 | _configuration = kwargs.pop("_configuration", None) 284 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 285 | 286 | if args: 287 | for arg in args: 288 | if isinstance(arg, dict): 289 | kwargs.update(arg) 290 | else: 291 | raise ApiTypeError( 292 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 293 | % ( 294 | args, 295 | self.__class__.__name__, 296 | ), 297 | path_to_item=_path_to_item, 298 | valid_classes=(self.__class__,), 299 | ) 300 | 301 | self._data_store = {} 302 | self._check_type = _check_type 303 | self._spec_property_naming = _spec_property_naming 304 | self._path_to_item = _path_to_item 305 | self._configuration = _configuration 306 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 307 | 308 | for var_name, var_value in kwargs.items(): 309 | if ( 310 | var_name not in self.attribute_map 311 | and self._configuration is not None 312 | and self._configuration.discard_unknown_keys 313 | and self.additional_properties_type is None 314 | ): 315 | # discard variable. 316 | continue 317 | setattr(self, var_name, var_value) 318 | if var_name in self.read_only_vars: 319 | raise ApiAttributeError( 320 | f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 321 | f"class with read only attributes." 322 | ) 323 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/get_layout_tiles_inner.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.exceptions import ApiAttributeError 15 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 16 | ApiTypeError, 17 | ModelComposed, 18 | ModelNormal, 19 | ModelSimple, 20 | OpenApiModel, 21 | cached_property, 22 | change_keys_js_to_python, 23 | convert_js_args_to_python_args, 24 | date, 25 | datetime, 26 | file_type, 27 | none_type, 28 | validate_get_composed_info, 29 | ) 30 | 31 | 32 | class GetLayoutTilesInner(ModelNormal): 33 | """NOTE: This class is auto generated by OpenAPI Generator. 34 | Ref: https://openapi-generator.tech 35 | 36 | Do not edit the class manually. 37 | 38 | Attributes: 39 | allowed_values (dict): The key is the tuple path to the attribute 40 | and the for var_name this is (var_name,). The value is a dict 41 | with a capitalized key describing the allowed value and an allowed 42 | value. These dicts store the allowed enum values. 43 | attribute_map (dict): The key is attribute name 44 | and the value is json key in definition. 45 | discriminator_value_class_map (dict): A dict to go from the discriminator 46 | variable value to the discriminator class name. 47 | validations (dict): The key is the tuple path to the attribute 48 | and the for var_name this is (var_name,). The value is a dict 49 | that stores validations for max_length, min_length, max_items, 50 | min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 51 | inclusive_minimum, and regex. 52 | additional_properties_type (tuple): A tuple of classes accepted 53 | as additional properties values. 54 | """ 55 | 56 | allowed_values = {} 57 | 58 | validations = {} 59 | 60 | @cached_property 61 | def additional_properties_type(): 62 | """ 63 | This must be a method because a model may have properties that are 64 | of type self, this must run after the class is loaded 65 | """ 66 | return ( 67 | bool, 68 | date, 69 | datetime, 70 | dict, 71 | float, 72 | int, 73 | list, 74 | str, 75 | none_type, 76 | ) # noqa: E501 77 | 78 | _nullable = False 79 | 80 | @cached_property 81 | def openapi_types(): 82 | """ 83 | This must be a method because a model may have properties that are 84 | of type self, this must run after the class is loaded 85 | 86 | Returns 87 | openapi_types (dict): The key is attribute name 88 | and the value is attribute type. 89 | """ 90 | return { 91 | "id": (int,), # noqa: E501 92 | "indicator_id": (str,), # noqa: E501 93 | "order_index": (int,), # noqa: E501 94 | } 95 | 96 | @cached_property 97 | def discriminator(): 98 | return None 99 | 100 | attribute_map = { 101 | "id": "id", # noqa: E501 102 | "indicator_id": "indicatorId", # noqa: E501 103 | "order_index": "orderIndex", # noqa: E501 104 | } 105 | 106 | read_only_vars = {} 107 | 108 | _composed_schemas = {} 109 | 110 | @classmethod 111 | @convert_js_args_to_python_args 112 | def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 113 | """GetLayoutTilesInner - a model defined in OpenAPI 114 | 115 | Keyword Args: 116 | _check_type (bool): if True, values for parameters in openapi_types 117 | will be type checked and a TypeError will be 118 | raised if the wrong type is input. 119 | Defaults to True 120 | _path_to_item (tuple/list): This is a list of keys or values to 121 | drill down to the model in received_data 122 | when deserializing a response 123 | _spec_property_naming (bool): True if the variable names in the input data 124 | are serialized names, as specified in the OpenAPI document. 125 | False if the variable names in the input data 126 | are pythonic names, e.g. snake case (default) 127 | _configuration (Configuration): the instance to use when 128 | deserializing a file_type parameter. 129 | If passed, type conversion is attempted 130 | If omitted no type conversion is done. 131 | _visited_composed_classes (tuple): This stores a tuple of 132 | classes that we have traveled through so that 133 | if we see that class again we will not use its 134 | discriminator again. 135 | When traveling through a discriminator, the 136 | composed schema that is 137 | is traveled through is added to this set. 138 | For example if Animal has a discriminator 139 | petType and we pass in "Dog", and the class Dog 140 | allOf includes Animal, we move through Animal 141 | once using the discriminator, and pick Dog. 142 | Then in Dog, we will make an instance of the 143 | Animal class but this time we won't travel 144 | through its discriminator because we passed in 145 | _visited_composed_classes = (Animal,) 146 | id (int): [optional] # noqa: E501 147 | indicator_id (str): [optional] # noqa: E501 148 | order_index (int): [optional] # noqa: E501 149 | """ 150 | 151 | _check_type = kwargs.pop("_check_type", True) 152 | _spec_property_naming = kwargs.pop("_spec_property_naming", True) 153 | _path_to_item = kwargs.pop("_path_to_item", ()) 154 | _configuration = kwargs.pop("_configuration", None) 155 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 156 | 157 | self = super(OpenApiModel, cls).__new__(cls) 158 | 159 | if args: 160 | for arg in args: 161 | if isinstance(arg, dict): 162 | kwargs.update(arg) 163 | else: 164 | raise ApiTypeError( 165 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 166 | % ( 167 | args, 168 | self.__class__.__name__, 169 | ), 170 | path_to_item=_path_to_item, 171 | valid_classes=(self.__class__,), 172 | ) 173 | 174 | self._data_store = {} 175 | self._check_type = _check_type 176 | self._spec_property_naming = _spec_property_naming 177 | self._path_to_item = _path_to_item 178 | self._configuration = _configuration 179 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 180 | 181 | for var_name, var_value in kwargs.items(): 182 | if ( 183 | var_name not in self.attribute_map 184 | and self._configuration is not None 185 | and self._configuration.discard_unknown_keys 186 | and self.additional_properties_type is None 187 | ): 188 | # discard variable. 189 | continue 190 | setattr(self, var_name, var_value) 191 | return self 192 | 193 | required_properties = set( 194 | [ 195 | "_data_store", 196 | "_check_type", 197 | "_spec_property_naming", 198 | "_path_to_item", 199 | "_configuration", 200 | "_visited_composed_classes", 201 | ] 202 | ) 203 | 204 | @convert_js_args_to_python_args 205 | def __init__(self, *args, **kwargs): # noqa: E501 206 | """GetLayoutTilesInner - a model defined in OpenAPI 207 | 208 | Keyword Args: 209 | _check_type (bool): if True, values for parameters in openapi_types 210 | will be type checked and a TypeError will be 211 | raised if the wrong type is input. 212 | Defaults to True 213 | _path_to_item (tuple/list): This is a list of keys or values to 214 | drill down to the model in received_data 215 | when deserializing a response 216 | _spec_property_naming (bool): True if the variable names in the input data 217 | are serialized names, as specified in the OpenAPI document. 218 | False if the variable names in the input data 219 | are pythonic names, e.g. snake case (default) 220 | _configuration (Configuration): the instance to use when 221 | deserializing a file_type parameter. 222 | If passed, type conversion is attempted 223 | If omitted no type conversion is done. 224 | _visited_composed_classes (tuple): This stores a tuple of 225 | classes that we have traveled through so that 226 | if we see that class again we will not use its 227 | discriminator again. 228 | When traveling through a discriminator, the 229 | composed schema that is 230 | is traveled through is added to this set. 231 | For example if Animal has a discriminator 232 | petType and we pass in "Dog", and the class Dog 233 | allOf includes Animal, we move through Animal 234 | once using the discriminator, and pick Dog. 235 | Then in Dog, we will make an instance of the 236 | Animal class but this time we won't travel 237 | through its discriminator because we passed in 238 | _visited_composed_classes = (Animal,) 239 | id (int): [optional] # noqa: E501 240 | indicator_id (str): [optional] # noqa: E501 241 | order_index (int): [optional] # noqa: E501 242 | """ 243 | 244 | _check_type = kwargs.pop("_check_type", True) 245 | _spec_property_naming = kwargs.pop("_spec_property_naming", False) 246 | _path_to_item = kwargs.pop("_path_to_item", ()) 247 | _configuration = kwargs.pop("_configuration", None) 248 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 249 | 250 | if args: 251 | for arg in args: 252 | if isinstance(arg, dict): 253 | kwargs.update(arg) 254 | else: 255 | raise ApiTypeError( 256 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 257 | % ( 258 | args, 259 | self.__class__.__name__, 260 | ), 261 | path_to_item=_path_to_item, 262 | valid_classes=(self.__class__,), 263 | ) 264 | 265 | self._data_store = {} 266 | self._check_type = _check_type 267 | self._spec_property_naming = _spec_property_naming 268 | self._path_to_item = _path_to_item 269 | self._configuration = _configuration 270 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 271 | 272 | for var_name, var_value in kwargs.items(): 273 | if ( 274 | var_name not in self.attribute_map 275 | and self._configuration is not None 276 | and self._configuration.discard_unknown_keys 277 | and self.additional_properties_type is None 278 | ): 279 | # discard variable. 280 | continue 281 | setattr(self, var_name, var_value) 282 | if var_name in self.read_only_vars: 283 | raise ApiAttributeError( 284 | f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 285 | f"class with read only attributes." 286 | ) 287 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/model/indicators.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import re # noqa: F401 12 | import sys # noqa: F401 13 | 14 | from deutschland.DashboardDeutschland.exceptions import ApiAttributeError 15 | from deutschland.DashboardDeutschland.model_utils import ( # noqa: F401 16 | ApiTypeError, 17 | ModelComposed, 18 | ModelNormal, 19 | ModelSimple, 20 | OpenApiModel, 21 | cached_property, 22 | change_keys_js_to_python, 23 | convert_js_args_to_python_args, 24 | date, 25 | datetime, 26 | file_type, 27 | none_type, 28 | validate_get_composed_info, 29 | ) 30 | 31 | 32 | class Indicators(ModelNormal): 33 | """NOTE: This class is auto generated by OpenAPI Generator. 34 | Ref: https://openapi-generator.tech 35 | 36 | Do not edit the class manually. 37 | 38 | Attributes: 39 | allowed_values (dict): The key is the tuple path to the attribute 40 | and the for var_name this is (var_name,). The value is a dict 41 | with a capitalized key describing the allowed value and an allowed 42 | value. These dicts store the allowed enum values. 43 | attribute_map (dict): The key is attribute name 44 | and the value is json key in definition. 45 | discriminator_value_class_map (dict): A dict to go from the discriminator 46 | variable value to the discriminator class name. 47 | validations (dict): The key is the tuple path to the attribute 48 | and the for var_name this is (var_name,). The value is a dict 49 | that stores validations for max_length, min_length, max_items, 50 | min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, 51 | inclusive_minimum, and regex. 52 | additional_properties_type (tuple): A tuple of classes accepted 53 | as additional properties values. 54 | """ 55 | 56 | allowed_values = {} 57 | 58 | validations = {} 59 | 60 | @cached_property 61 | def additional_properties_type(): 62 | """ 63 | This must be a method because a model may have properties that are 64 | of type self, this must run after the class is loaded 65 | """ 66 | return ( 67 | bool, 68 | date, 69 | datetime, 70 | dict, 71 | float, 72 | int, 73 | list, 74 | str, 75 | none_type, 76 | ) # noqa: E501 77 | 78 | _nullable = False 79 | 80 | @cached_property 81 | def openapi_types(): 82 | """ 83 | This must be a method because a model may have properties that are 84 | of type self, this must run after the class is loaded 85 | 86 | Returns 87 | openapi_types (dict): The key is attribute name 88 | and the value is attribute type. 89 | """ 90 | return { 91 | "id": (str,), # noqa: E501 92 | "date": (int,), # noqa: E501 93 | "json": (str,), # noqa: E501 94 | "title": (str,), # noqa: E501 95 | } 96 | 97 | @cached_property 98 | def discriminator(): 99 | return None 100 | 101 | attribute_map = { 102 | "id": "id", # noqa: E501 103 | "date": "date", # noqa: E501 104 | "json": "json", # noqa: E501 105 | "title": "title", # noqa: E501 106 | } 107 | 108 | read_only_vars = {} 109 | 110 | _composed_schemas = {} 111 | 112 | @classmethod 113 | @convert_js_args_to_python_args 114 | def _from_openapi_data(cls, *args, **kwargs): # noqa: E501 115 | """Indicators - a model defined in OpenAPI 116 | 117 | Keyword Args: 118 | _check_type (bool): if True, values for parameters in openapi_types 119 | will be type checked and a TypeError will be 120 | raised if the wrong type is input. 121 | Defaults to True 122 | _path_to_item (tuple/list): This is a list of keys or values to 123 | drill down to the model in received_data 124 | when deserializing a response 125 | _spec_property_naming (bool): True if the variable names in the input data 126 | are serialized names, as specified in the OpenAPI document. 127 | False if the variable names in the input data 128 | are pythonic names, e.g. snake case (default) 129 | _configuration (Configuration): the instance to use when 130 | deserializing a file_type parameter. 131 | If passed, type conversion is attempted 132 | If omitted no type conversion is done. 133 | _visited_composed_classes (tuple): This stores a tuple of 134 | classes that we have traveled through so that 135 | if we see that class again we will not use its 136 | discriminator again. 137 | When traveling through a discriminator, the 138 | composed schema that is 139 | is traveled through is added to this set. 140 | For example if Animal has a discriminator 141 | petType and we pass in "Dog", and the class Dog 142 | allOf includes Animal, we move through Animal 143 | once using the discriminator, and pick Dog. 144 | Then in Dog, we will make an instance of the 145 | Animal class but this time we won't travel 146 | through its discriminator because we passed in 147 | _visited_composed_classes = (Animal,) 148 | id (str): [optional] # noqa: E501 149 | date (int): [optional] # noqa: E501 150 | json (str): [optional] # noqa: E501 151 | title (str): [optional] # noqa: E501 152 | """ 153 | 154 | _check_type = kwargs.pop("_check_type", True) 155 | _spec_property_naming = kwargs.pop("_spec_property_naming", True) 156 | _path_to_item = kwargs.pop("_path_to_item", ()) 157 | _configuration = kwargs.pop("_configuration", None) 158 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 159 | 160 | self = super(OpenApiModel, cls).__new__(cls) 161 | 162 | if args: 163 | for arg in args: 164 | if isinstance(arg, dict): 165 | kwargs.update(arg) 166 | else: 167 | raise ApiTypeError( 168 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 169 | % ( 170 | args, 171 | self.__class__.__name__, 172 | ), 173 | path_to_item=_path_to_item, 174 | valid_classes=(self.__class__,), 175 | ) 176 | 177 | self._data_store = {} 178 | self._check_type = _check_type 179 | self._spec_property_naming = _spec_property_naming 180 | self._path_to_item = _path_to_item 181 | self._configuration = _configuration 182 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 183 | 184 | for var_name, var_value in kwargs.items(): 185 | if ( 186 | var_name not in self.attribute_map 187 | and self._configuration is not None 188 | and self._configuration.discard_unknown_keys 189 | and self.additional_properties_type is None 190 | ): 191 | # discard variable. 192 | continue 193 | setattr(self, var_name, var_value) 194 | return self 195 | 196 | required_properties = set( 197 | [ 198 | "_data_store", 199 | "_check_type", 200 | "_spec_property_naming", 201 | "_path_to_item", 202 | "_configuration", 203 | "_visited_composed_classes", 204 | ] 205 | ) 206 | 207 | @convert_js_args_to_python_args 208 | def __init__(self, *args, **kwargs): # noqa: E501 209 | """Indicators - a model defined in OpenAPI 210 | 211 | Keyword Args: 212 | _check_type (bool): if True, values for parameters in openapi_types 213 | will be type checked and a TypeError will be 214 | raised if the wrong type is input. 215 | Defaults to True 216 | _path_to_item (tuple/list): This is a list of keys or values to 217 | drill down to the model in received_data 218 | when deserializing a response 219 | _spec_property_naming (bool): True if the variable names in the input data 220 | are serialized names, as specified in the OpenAPI document. 221 | False if the variable names in the input data 222 | are pythonic names, e.g. snake case (default) 223 | _configuration (Configuration): the instance to use when 224 | deserializing a file_type parameter. 225 | If passed, type conversion is attempted 226 | If omitted no type conversion is done. 227 | _visited_composed_classes (tuple): This stores a tuple of 228 | classes that we have traveled through so that 229 | if we see that class again we will not use its 230 | discriminator again. 231 | When traveling through a discriminator, the 232 | composed schema that is 233 | is traveled through is added to this set. 234 | For example if Animal has a discriminator 235 | petType and we pass in "Dog", and the class Dog 236 | allOf includes Animal, we move through Animal 237 | once using the discriminator, and pick Dog. 238 | Then in Dog, we will make an instance of the 239 | Animal class but this time we won't travel 240 | through its discriminator because we passed in 241 | _visited_composed_classes = (Animal,) 242 | id (str): [optional] # noqa: E501 243 | date (int): [optional] # noqa: E501 244 | json (str): [optional] # noqa: E501 245 | title (str): [optional] # noqa: E501 246 | """ 247 | 248 | _check_type = kwargs.pop("_check_type", True) 249 | _spec_property_naming = kwargs.pop("_spec_property_naming", False) 250 | _path_to_item = kwargs.pop("_path_to_item", ()) 251 | _configuration = kwargs.pop("_configuration", None) 252 | _visited_composed_classes = kwargs.pop("_visited_composed_classes", ()) 253 | 254 | if args: 255 | for arg in args: 256 | if isinstance(arg, dict): 257 | kwargs.update(arg) 258 | else: 259 | raise ApiTypeError( 260 | "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." 261 | % ( 262 | args, 263 | self.__class__.__name__, 264 | ), 265 | path_to_item=_path_to_item, 266 | valid_classes=(self.__class__,), 267 | ) 268 | 269 | self._data_store = {} 270 | self._check_type = _check_type 271 | self._spec_property_naming = _spec_property_naming 272 | self._path_to_item = _path_to_item 273 | self._configuration = _configuration 274 | self._visited_composed_classes = _visited_composed_classes + (self.__class__,) 275 | 276 | for var_name, var_value in kwargs.items(): 277 | if ( 278 | var_name not in self.attribute_map 279 | and self._configuration is not None 280 | and self._configuration.discard_unknown_keys 281 | and self.additional_properties_type is None 282 | ): 283 | # discard variable. 284 | continue 285 | setattr(self, var_name, var_value) 286 | if var_name in self.read_only_vars: 287 | raise ApiAttributeError( 288 | f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate " 289 | f"class with read only attributes." 290 | ) 291 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/models/__init__.py: -------------------------------------------------------------------------------- 1 | # flake8: noqa 2 | 3 | # import all models into this package 4 | # if you have many models here with many references from one model to another this may 5 | # raise a RecursionError 6 | # to avoid this, import only the models that you directly need like: 7 | # from from deutschland.DashboardDeutschland.model.pet import Pet 8 | # or import this package, but before doing it, use: 9 | # import sys 10 | # sys.setrecursionlimit(n) 11 | 12 | from deutschland.DashboardDeutschland.model.geo import Geo 13 | from deutschland.DashboardDeutschland.model.geo_crs import GeoCrs 14 | from deutschland.DashboardDeutschland.model.geo_crs_properties import GeoCrsProperties 15 | from deutschland.DashboardDeutschland.model.get import Get 16 | from deutschland.DashboardDeutschland.model.get_category import GetCategory 17 | from deutschland.DashboardDeutschland.model.get_layout_tiles_inner import ( 18 | GetLayoutTilesInner, 19 | ) 20 | from deutschland.DashboardDeutschland.model.indicators import Indicators 21 | -------------------------------------------------------------------------------- /python-client/deutschland/DashboardDeutschland/rest.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import io 12 | import ipaddress 13 | import json 14 | import logging 15 | import re 16 | import ssl 17 | from urllib.parse import urlencode, urlparse 18 | from urllib.request import proxy_bypass_environment 19 | 20 | import urllib3 21 | from deutschland.DashboardDeutschland.exceptions import ( 22 | ApiException, 23 | ApiValueError, 24 | ForbiddenException, 25 | NotFoundException, 26 | ServiceException, 27 | UnauthorizedException, 28 | ) 29 | 30 | logger = logging.getLogger(__name__) 31 | 32 | 33 | class RESTResponse(io.IOBase): 34 | 35 | def __init__(self, resp): 36 | self.urllib3_response = resp 37 | self.status = resp.status 38 | self.reason = resp.reason 39 | self.data = resp.data 40 | 41 | def getheaders(self): 42 | """Returns a dictionary of the response headers.""" 43 | return self.urllib3_response.getheaders() 44 | 45 | def getheader(self, name, default=None): 46 | """Returns a given response header.""" 47 | return self.urllib3_response.getheader(name, default) 48 | 49 | 50 | class RESTClientObject(object): 51 | 52 | def __init__(self, configuration, pools_size=4, maxsize=None): 53 | # urllib3.PoolManager will pass all kw parameters to connectionpool 54 | # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/poolmanager.py#L75 # noqa: E501 55 | # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/connectionpool.py#L680 # noqa: E501 56 | # maxsize is the number of requests to host that are allowed in parallel # noqa: E501 57 | # Custom SSL certificates and client certificates: http://urllib3.readthedocs.io/en/latest/advanced-usage.html # noqa: E501 58 | 59 | # cert_reqs 60 | if configuration.verify_ssl: 61 | cert_reqs = ssl.CERT_REQUIRED 62 | else: 63 | cert_reqs = ssl.CERT_NONE 64 | 65 | addition_pool_args = {} 66 | if configuration.assert_hostname is not None: 67 | addition_pool_args["assert_hostname"] = ( 68 | configuration.assert_hostname 69 | ) # noqa: E501 70 | 71 | if configuration.retries is not None: 72 | addition_pool_args["retries"] = configuration.retries 73 | 74 | if configuration.socket_options is not None: 75 | addition_pool_args["socket_options"] = configuration.socket_options 76 | 77 | if maxsize is None: 78 | if configuration.connection_pool_maxsize is not None: 79 | maxsize = configuration.connection_pool_maxsize 80 | else: 81 | maxsize = 4 82 | 83 | # https pool manager 84 | if configuration.proxy and not should_bypass_proxies( 85 | configuration.host, no_proxy=configuration.no_proxy or "" 86 | ): 87 | self.pool_manager = urllib3.ProxyManager( 88 | num_pools=pools_size, 89 | maxsize=maxsize, 90 | cert_reqs=cert_reqs, 91 | ca_certs=configuration.ssl_ca_cert, 92 | cert_file=configuration.cert_file, 93 | key_file=configuration.key_file, 94 | proxy_url=configuration.proxy, 95 | proxy_headers=configuration.proxy_headers, 96 | **addition_pool_args 97 | ) 98 | else: 99 | self.pool_manager = urllib3.PoolManager( 100 | num_pools=pools_size, 101 | maxsize=maxsize, 102 | cert_reqs=cert_reqs, 103 | ca_certs=configuration.ssl_ca_cert, 104 | cert_file=configuration.cert_file, 105 | key_file=configuration.key_file, 106 | **addition_pool_args 107 | ) 108 | 109 | def request( 110 | self, 111 | method, 112 | url, 113 | query_params=None, 114 | headers=None, 115 | body=None, 116 | post_params=None, 117 | _preload_content=True, 118 | _request_timeout=None, 119 | ): 120 | """Perform requests. 121 | 122 | :param method: http request method 123 | :param url: http request url 124 | :param query_params: query parameters in the url 125 | :param headers: http request headers 126 | :param body: request json body, for `application/json` 127 | :param post_params: request post parameters, 128 | `application/x-www-form-urlencoded` 129 | and `multipart/form-data` 130 | :param _preload_content: if False, the urllib3.HTTPResponse object will 131 | be returned without reading/decoding response 132 | data. Default is True. 133 | :param _request_timeout: timeout setting for this request. If one 134 | number provided, it will be total request 135 | timeout. It can also be a pair (tuple) of 136 | (connection, read) timeouts. 137 | """ 138 | method = method.upper() 139 | assert method in ["GET", "HEAD", "DELETE", "POST", "PUT", "PATCH", "OPTIONS"] 140 | 141 | if post_params and body: 142 | raise ApiValueError( 143 | "body parameter cannot be used with post_params parameter." 144 | ) 145 | 146 | post_params = post_params or {} 147 | headers = headers or {} 148 | 149 | timeout = None 150 | if _request_timeout: 151 | if isinstance(_request_timeout, (int, float)): # noqa: E501,F821 152 | timeout = urllib3.Timeout(total=_request_timeout) 153 | elif isinstance(_request_timeout, tuple) and len(_request_timeout) == 2: 154 | timeout = urllib3.Timeout( 155 | connect=_request_timeout[0], read=_request_timeout[1] 156 | ) 157 | 158 | try: 159 | # For `POST`, `PUT`, `PATCH`, `OPTIONS`, `DELETE` 160 | if method in ["POST", "PUT", "PATCH", "OPTIONS", "DELETE"]: 161 | # Only set a default Content-Type for POST, PUT, PATCH and OPTIONS requests 162 | if (method != "DELETE") and ("Content-Type" not in headers): 163 | headers["Content-Type"] = "application/json" 164 | if query_params: 165 | url += "?" + urlencode(query_params) 166 | if ("Content-Type" not in headers) or ( 167 | re.search("json", headers["Content-Type"], re.IGNORECASE) 168 | ): 169 | request_body = None 170 | if body is not None: 171 | request_body = json.dumps(body) 172 | r = self.pool_manager.request( 173 | method, 174 | url, 175 | body=request_body, 176 | preload_content=_preload_content, 177 | timeout=timeout, 178 | headers=headers, 179 | ) 180 | elif ( 181 | headers["Content-Type"] == "application/x-www-form-urlencoded" 182 | ): # noqa: E501 183 | r = self.pool_manager.request( 184 | method, 185 | url, 186 | fields=post_params, 187 | encode_multipart=False, 188 | preload_content=_preload_content, 189 | timeout=timeout, 190 | headers=headers, 191 | ) 192 | elif headers["Content-Type"] == "multipart/form-data": 193 | # must del headers['Content-Type'], or the correct 194 | # Content-Type which generated by urllib3 will be 195 | # overwritten. 196 | del headers["Content-Type"] 197 | r = self.pool_manager.request( 198 | method, 199 | url, 200 | fields=post_params, 201 | encode_multipart=True, 202 | preload_content=_preload_content, 203 | timeout=timeout, 204 | headers=headers, 205 | ) 206 | # Pass a `string` parameter directly in the body to support 207 | # other content types than Json when `body` argument is 208 | # provided in serialized form 209 | elif isinstance(body, str) or isinstance(body, bytes): 210 | request_body = body 211 | r = self.pool_manager.request( 212 | method, 213 | url, 214 | body=request_body, 215 | preload_content=_preload_content, 216 | timeout=timeout, 217 | headers=headers, 218 | ) 219 | else: 220 | # Cannot generate the request from given parameters 221 | msg = """Cannot prepare a request message for provided 222 | arguments. Please check that your arguments match 223 | declared content type.""" 224 | raise ApiException(status=0, reason=msg) 225 | # For `GET`, `HEAD` 226 | else: 227 | r = self.pool_manager.request( 228 | method, 229 | url, 230 | fields=query_params, 231 | preload_content=_preload_content, 232 | timeout=timeout, 233 | headers=headers, 234 | ) 235 | except urllib3.exceptions.SSLError as e: 236 | msg = "{0}\n{1}".format(type(e).__name__, str(e)) 237 | raise ApiException(status=0, reason=msg) 238 | 239 | if _preload_content: 240 | r = RESTResponse(r) 241 | 242 | # log response body 243 | logger.debug("response body: %s", r.data) 244 | 245 | if not 200 <= r.status <= 299: 246 | if r.status == 401: 247 | raise UnauthorizedException(http_resp=r) 248 | 249 | if r.status == 403: 250 | raise ForbiddenException(http_resp=r) 251 | 252 | if r.status == 404: 253 | raise NotFoundException(http_resp=r) 254 | 255 | if 500 <= r.status <= 599: 256 | raise ServiceException(http_resp=r) 257 | 258 | raise ApiException(http_resp=r) 259 | 260 | return r 261 | 262 | def GET( 263 | self, 264 | url, 265 | headers=None, 266 | query_params=None, 267 | _preload_content=True, 268 | _request_timeout=None, 269 | ): 270 | return self.request( 271 | "GET", 272 | url, 273 | headers=headers, 274 | _preload_content=_preload_content, 275 | _request_timeout=_request_timeout, 276 | query_params=query_params, 277 | ) 278 | 279 | def HEAD( 280 | self, 281 | url, 282 | headers=None, 283 | query_params=None, 284 | _preload_content=True, 285 | _request_timeout=None, 286 | ): 287 | return self.request( 288 | "HEAD", 289 | url, 290 | headers=headers, 291 | _preload_content=_preload_content, 292 | _request_timeout=_request_timeout, 293 | query_params=query_params, 294 | ) 295 | 296 | def OPTIONS( 297 | self, 298 | url, 299 | headers=None, 300 | query_params=None, 301 | post_params=None, 302 | body=None, 303 | _preload_content=True, 304 | _request_timeout=None, 305 | ): 306 | return self.request( 307 | "OPTIONS", 308 | url, 309 | headers=headers, 310 | query_params=query_params, 311 | post_params=post_params, 312 | _preload_content=_preload_content, 313 | _request_timeout=_request_timeout, 314 | body=body, 315 | ) 316 | 317 | def DELETE( 318 | self, 319 | url, 320 | headers=None, 321 | query_params=None, 322 | body=None, 323 | _preload_content=True, 324 | _request_timeout=None, 325 | ): 326 | return self.request( 327 | "DELETE", 328 | url, 329 | headers=headers, 330 | query_params=query_params, 331 | _preload_content=_preload_content, 332 | _request_timeout=_request_timeout, 333 | body=body, 334 | ) 335 | 336 | def POST( 337 | self, 338 | url, 339 | headers=None, 340 | query_params=None, 341 | post_params=None, 342 | body=None, 343 | _preload_content=True, 344 | _request_timeout=None, 345 | ): 346 | return self.request( 347 | "POST", 348 | url, 349 | headers=headers, 350 | query_params=query_params, 351 | post_params=post_params, 352 | _preload_content=_preload_content, 353 | _request_timeout=_request_timeout, 354 | body=body, 355 | ) 356 | 357 | def PUT( 358 | self, 359 | url, 360 | headers=None, 361 | query_params=None, 362 | post_params=None, 363 | body=None, 364 | _preload_content=True, 365 | _request_timeout=None, 366 | ): 367 | return self.request( 368 | "PUT", 369 | url, 370 | headers=headers, 371 | query_params=query_params, 372 | post_params=post_params, 373 | _preload_content=_preload_content, 374 | _request_timeout=_request_timeout, 375 | body=body, 376 | ) 377 | 378 | def PATCH( 379 | self, 380 | url, 381 | headers=None, 382 | query_params=None, 383 | post_params=None, 384 | body=None, 385 | _preload_content=True, 386 | _request_timeout=None, 387 | ): 388 | return self.request( 389 | "PATCH", 390 | url, 391 | headers=headers, 392 | query_params=query_params, 393 | post_params=post_params, 394 | _preload_content=_preload_content, 395 | _request_timeout=_request_timeout, 396 | body=body, 397 | ) 398 | 399 | 400 | # end of class RESTClientObject 401 | 402 | 403 | def is_ipv4(target): 404 | """Test if IPv4 address or not""" 405 | try: 406 | chk = ipaddress.IPv4Address(target) 407 | return True 408 | except ipaddress.AddressValueError: 409 | return False 410 | 411 | 412 | def in_ipv4net(target, net): 413 | """Test if target belongs to given IPv4 network""" 414 | try: 415 | nw = ipaddress.IPv4Network(net) 416 | ip = ipaddress.IPv4Address(target) 417 | if ip in nw: 418 | return True 419 | return False 420 | except ipaddress.AddressValueError: 421 | return False 422 | except ipaddress.NetmaskValueError: 423 | return False 424 | 425 | 426 | def should_bypass_proxies(url, no_proxy=None): 427 | """Yet another requests.should_bypass_proxies 428 | Test if proxies should not be used for a particular url. 429 | """ 430 | 431 | parsed = urlparse(url) 432 | 433 | # special cases 434 | if parsed.hostname in [None, ""]: 435 | return True 436 | 437 | # special cases 438 | if no_proxy in [None, ""]: 439 | return False 440 | if no_proxy == "*": 441 | return True 442 | 443 | no_proxy = no_proxy.lower().replace(" ", "") 444 | entries = (host for host in no_proxy.split(",") if host) 445 | 446 | if is_ipv4(parsed.hostname): 447 | for item in entries: 448 | if in_ipv4net(parsed.hostname, item): 449 | return True 450 | return proxy_bypass_environment(parsed.hostname, {"no": no_proxy}) 451 | -------------------------------------------------------------------------------- /python-client/docs/Geo.md: -------------------------------------------------------------------------------- 1 | # Geo 2 | 3 | 4 | ## Properties 5 | Name | Type | Description | Notes 6 | ------------ | ------------- | ------------- | ------------- 7 | **type** | **str** | | [optional] 8 | **name** | **str** | | [optional] 9 | **title** | **str** | | [optional] 10 | **version** | **str** | | [optional] 11 | **copyright_short** | **str** | | [optional] 12 | **copyright_url** | **str** | | [optional] 13 | **crs** | [**GeoCrs**](GeoCrs.md) | | [optional] 14 | **features** | **[{str: (bool, date, datetime, dict, float, int, list, str, none_type)}]** | | [optional] 15 | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] 16 | 17 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 18 | 19 | 20 | -------------------------------------------------------------------------------- /python-client/docs/GeoApi.md: -------------------------------------------------------------------------------- 1 | # DashboardDeutschland.GeoApi 2 | 3 | All URIs are relative to *https://www.dashboard-deutschland.de* 4 | 5 | Method | HTTP request | Description 6 | ------------- | ------------- | ------------- 7 | [**geo**](GeoApi.md#geo) | **GET** /geojson/de-all.geo.json | Zugriff auf Geojson-Daten zu Deutschland und den Ländern 8 | 9 | 10 | # **geo** 11 | > [Geo] geo() 12 | 13 | Zugriff auf Geojson-Daten zu Deutschland und den Ländern 14 | 15 | Die API ermöglicht Zugriff auf Geojson-Daten zu Deutschland und den Ländern (00-DE_admin1_400). 16 | 17 | ### Example 18 | 19 | 20 | ```python 21 | import time 22 | from deutschland import DashboardDeutschland 23 | from deutschland.DashboardDeutschland.api import geo_api 24 | from deutschland.DashboardDeutschland.model.geo import Geo 25 | from pprint import pprint 26 | # Defining the host is optional and defaults to https://www.dashboard-deutschland.de 27 | # See configuration.py for a list of all supported configuration parameters. 28 | configuration = DashboardDeutschland.Configuration( 29 | host = "https://www.dashboard-deutschland.de" 30 | ) 31 | 32 | 33 | # Enter a context with an instance of the API client 34 | with DashboardDeutschland.ApiClient() as api_client: 35 | # Create an instance of the API class 36 | api_instance = geo_api.GeoApi(api_client) 37 | 38 | # example, this endpoint has no required or optional parameters 39 | try: 40 | # Zugriff auf Geojson-Daten zu Deutschland und den Ländern 41 | api_response = api_instance.geo() 42 | pprint(api_response) 43 | except DashboardDeutschland.ApiException as e: 44 | print("Exception when calling GeoApi->geo: %s\n" % e) 45 | ``` 46 | 47 | 48 | ### Parameters 49 | This endpoint does not need any parameter. 50 | 51 | ### Return type 52 | 53 | [**[Geo]**](Geo.md) 54 | 55 | ### Authorization 56 | 57 | No authorization required 58 | 59 | ### HTTP request headers 60 | 61 | - **Content-Type**: Not defined 62 | - **Accept**: application/json 63 | 64 | 65 | ### HTTP response details 66 | 67 | | Status code | Description | Response headers | 68 | |-------------|-------------|------------------| 69 | **200** | OK | - | 70 | 71 | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) 72 | 73 | -------------------------------------------------------------------------------- /python-client/docs/GeoCrs.md: -------------------------------------------------------------------------------- 1 | # GeoCrs 2 | 3 | 4 | ## Properties 5 | Name | Type | Description | Notes 6 | ------------ | ------------- | ------------- | ------------- 7 | **type** | **str** | | [optional] 8 | **properties** | [**GeoCrsProperties**](GeoCrsProperties.md) | | [optional] 9 | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] 10 | 11 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 12 | 13 | 14 | -------------------------------------------------------------------------------- /python-client/docs/GeoCrsProperties.md: -------------------------------------------------------------------------------- 1 | # GeoCrsProperties 2 | 3 | 4 | ## Properties 5 | Name | Type | Description | Notes 6 | ------------ | ------------- | ------------- | ------------- 7 | **name** | **str** | | [optional] 8 | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] 9 | 10 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 11 | 12 | 13 | -------------------------------------------------------------------------------- /python-client/docs/Get.md: -------------------------------------------------------------------------------- 1 | # Get 2 | 3 | 4 | ## Properties 5 | Name | Type | Description | Notes 6 | ------------ | ------------- | ------------- | ------------- 7 | **id** | **str** | | [optional] 8 | **name** | **str** | | [optional] 9 | **name_en** | **str** | | [optional] 10 | **description** | **str** | | [optional] 11 | **description_en** | **str** | | [optional] 12 | **teaser** | **str** | | [optional] 13 | **teaser_en** | **str** | | [optional] 14 | **conclusion** | **str** | | [optional] 15 | **conclusion_en** | **str** | | [optional] 16 | **category** | [**GetCategory**](GetCategory.md) | | [optional] 17 | **tags** | **[{str: (bool, date, datetime, dict, float, int, list, str, none_type)}]** | | [optional] 18 | **image** | **str** | | [optional] 19 | **clicks** | **int** | | [optional] 20 | **order_id** | **int** | | [optional] 21 | **trending** | **bool** | | [optional] 22 | **top** | **bool** | | [optional] 23 | **layout_tiles** | [**[GetLayoutTilesInner]**](GetLayoutTilesInner.md) | | [optional] 24 | **layout_mode** | **str** | | [optional] 25 | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] 26 | 27 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 28 | 29 | 30 | -------------------------------------------------------------------------------- /python-client/docs/GetApi.md: -------------------------------------------------------------------------------- 1 | # DashboardDeutschland.GetApi 2 | 3 | All URIs are relative to *https://www.dashboard-deutschland.de* 4 | 5 | Method | HTTP request | Description 6 | ------------- | ------------- | ------------- 7 | [**get**](GetApi.md#get) | **GET** /api/dashboard/get | Zugriff auf alle gültigen Einträge des id-Parameters 8 | 9 | 10 | # **get** 11 | > [Get] get() 12 | 13 | Zugriff auf alle gültigen Einträge des id-Parameters 14 | 15 | Die API ermöglicht Zugriff auf alle gültigen Einträge des id-Parameters (siehe unten, Indikatoren). 16 | 17 | ### Example 18 | 19 | 20 | ```python 21 | import time 22 | from deutschland import DashboardDeutschland 23 | from deutschland.DashboardDeutschland.api import get_api 24 | from deutschland.DashboardDeutschland.model.get import Get 25 | from pprint import pprint 26 | # Defining the host is optional and defaults to https://www.dashboard-deutschland.de 27 | # See configuration.py for a list of all supported configuration parameters. 28 | configuration = DashboardDeutschland.Configuration( 29 | host = "https://www.dashboard-deutschland.de" 30 | ) 31 | 32 | 33 | # Enter a context with an instance of the API client 34 | with DashboardDeutschland.ApiClient() as api_client: 35 | # Create an instance of the API class 36 | api_instance = get_api.GetApi(api_client) 37 | 38 | # example, this endpoint has no required or optional parameters 39 | try: 40 | # Zugriff auf alle gültigen Einträge des id-Parameters 41 | api_response = api_instance.get() 42 | pprint(api_response) 43 | except DashboardDeutschland.ApiException as e: 44 | print("Exception when calling GetApi->get: %s\n" % e) 45 | ``` 46 | 47 | 48 | ### Parameters 49 | This endpoint does not need any parameter. 50 | 51 | ### Return type 52 | 53 | [**[Get]**](Get.md) 54 | 55 | ### Authorization 56 | 57 | No authorization required 58 | 59 | ### HTTP request headers 60 | 61 | - **Content-Type**: Not defined 62 | - **Accept**: application/json 63 | 64 | 65 | ### HTTP response details 66 | 67 | | Status code | Description | Response headers | 68 | |-------------|-------------|------------------| 69 | **200** | OK | - | 70 | 71 | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) 72 | 73 | -------------------------------------------------------------------------------- /python-client/docs/GetCategory.md: -------------------------------------------------------------------------------- 1 | # GetCategory 2 | 3 | 4 | ## Properties 5 | Name | Type | Description | Notes 6 | ------------ | ------------- | ------------- | ------------- 7 | **id** | **str** | | [optional] 8 | **name** | **str** | | [optional] 9 | **name_en** | **str** | | [optional] 10 | **description** | **str** | | [optional] 11 | **description_en** | **str** | | [optional] 12 | **icon** | **str** | | [optional] 13 | **view_box** | **str** | | [optional] 14 | **icon_type** | **str** | | [optional] 15 | **color** | **str** | | [optional] 16 | **cat_index** | **int** | | [optional] 17 | **image** | **str** | | [optional] 18 | **alt** | **str** | | [optional] 19 | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] 20 | 21 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 22 | 23 | 24 | -------------------------------------------------------------------------------- /python-client/docs/GetLayoutTilesInner.md: -------------------------------------------------------------------------------- 1 | # GetLayoutTilesInner 2 | 3 | 4 | ## Properties 5 | Name | Type | Description | Notes 6 | ------------ | ------------- | ------------- | ------------- 7 | **id** | **int** | | [optional] 8 | **indicator_id** | **str** | | [optional] 9 | **order_index** | **int** | | [optional] 10 | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] 11 | 12 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 13 | 14 | 15 | -------------------------------------------------------------------------------- /python-client/docs/Indicators.md: -------------------------------------------------------------------------------- 1 | # Indicators 2 | 3 | 4 | ## Properties 5 | Name | Type | Description | Notes 6 | ------------ | ------------- | ------------- | ------------- 7 | **id** | **str** | | [optional] 8 | **date** | **int** | | [optional] 9 | **json** | **str** | | [optional] 10 | **title** | **str** | | [optional] 11 | **any string name** | **bool, date, datetime, dict, float, int, list, str, none_type** | any string name can be used but the value must be the correct type | [optional] 12 | 13 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 14 | 15 | 16 | -------------------------------------------------------------------------------- /python-client/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool] 2 | [tool.poetry] 3 | name = "de-DashboardDeutschland" 4 | version = "0.1.0" 5 | description = "Dashboard Deutschland API" 6 | keywords = ["OpenAPI", "OpenAPI-Generator", "DashboardDeutschland", "App", "API"] 7 | homepage = "https://github.com/bundesAPI/dashboard-deutschland-api" 8 | authors = ["BundesAPI "] 9 | packages = [ 10 | { include = "deutschland"} 11 | ] 12 | license = "Apache-2.0" 13 | readme = "README.md" 14 | 15 | [tool.poetry.dependencies] 16 | python = ">=3.6" 17 | python-dateutil = "*" 18 | urllib3 = ">=1.25.3" 19 | 20 | [tool.poetry.urls] 21 | "Bug Tracker" = "https://github.com/bundesAPI/dashboard-deutschland-api/issues" 22 | 23 | [tool.poetry.dev-dependencies] 24 | black = "^21.7b0" 25 | pytest = "^6.2.4" 26 | 27 | 28 | [build-system] 29 | requires = ["poetry-core>=1.0.0"] 30 | build-backend = "poetry.core.masonry.api" 31 | 32 | -------------------------------------------------------------------------------- /python-client/requirements.txt: -------------------------------------------------------------------------------- 1 | python_dateutil >= 2.5.3 2 | setuptools >= 59.0.0 3 | urllib3 >= 1.25.3 4 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/Makefile: -------------------------------------------------------------------------------- 1 | # Minimal makefile for Sphinx documentation 2 | # 3 | 4 | # You can set these variables from the command line, and also 5 | # from the environment for the first two. 6 | SPHINXOPTS ?= 7 | SPHINXBUILD ?= sphinx-build 8 | SOURCEDIR = . 9 | BUILDDIR = _build 10 | 11 | # Put it first so that "make" without argument is like "make help". 12 | help: 13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 14 | 15 | .PHONY: help Makefile 16 | 17 | # Catch-all target: route all unknown targets to Sphinx using the new 18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). 19 | %: Makefile 20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 21 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/conf.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | sys.path.insert(0, os.path.abspath("../")) 5 | # Configuration file for the Sphinx documentation builder. 6 | # 7 | # For the full list of built-in configuration values, see the documentation: 8 | # https://www.sphinx-doc.org/en/master/usage/configuration.html 9 | 10 | # -- Project information ----------------------------------------------------- 11 | # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information 12 | 13 | project = "DashboardDeutschland-api" 14 | copyright = "2024, Andreas Fischer" 15 | author = "Andreas Fischer" 16 | 17 | version = "0.1.0" 18 | release = "0.1.0" 19 | 20 | # -- General configuration --------------------------------------------------- 21 | # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration 22 | 23 | extensions = [ 24 | "m2r2", 25 | "sphinx.ext.autodoc", 26 | "sphinx.ext.napoleon", 27 | "sphinx.ext.autosummary", 28 | ] 29 | 30 | templates_path = ["_templates"] 31 | exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] 32 | 33 | language = "de" 34 | 35 | # -- Options for HTML output ------------------------------------------------- 36 | # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output 37 | 38 | html_theme = "alabaster" 39 | html_static_path = ["_static"] 40 | 41 | source_extensions = [".rst", ".md"] 42 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/index.rst: -------------------------------------------------------------------------------- 1 | DashboardDeutschland-api Documentation 2 | ====================================== 3 | 4 | .. toctree:: 5 | :glob: 6 | 7 | source/* 8 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/make.bat: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | 3 | pushd %~dp0 4 | 5 | REM Command file for Sphinx documentation 6 | 7 | if "%SPHINXBUILD%" == "" ( 8 | set SPHINXBUILD=sphinx-build 9 | ) 10 | set SOURCEDIR=. 11 | set BUILDDIR=_build 12 | 13 | %SPHINXBUILD% >NUL 2>NUL 14 | if errorlevel 9009 ( 15 | echo. 16 | echo.The 'sphinx-build' command was not found. Make sure you have Sphinx 17 | echo.installed, then set the SPHINXBUILD environment variable to point 18 | echo.to the full path of the 'sphinx-build' executable. Alternatively you 19 | echo.may add the Sphinx directory to PATH. 20 | echo. 21 | echo.If you don't have Sphinx installed, grab it from 22 | echo.https://www.sphinx-doc.org/ 23 | exit /b 1 24 | ) 25 | 26 | if "%1" == "" goto help 27 | 28 | %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 29 | goto end 30 | 31 | :help 32 | %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 33 | 34 | :end 35 | popd 36 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/source/DashboardDeutschland.api.rst: -------------------------------------------------------------------------------- 1 | DashboardDeutschland.api package 2 | ================================ 3 | 4 | Submodules 5 | ---------- 6 | 7 | DashboardDeutschland.api.geo\_api module 8 | ---------------------------------------- 9 | 10 | .. automodule:: DashboardDeutschland.api.geo_api 11 | :members: 12 | :undoc-members: 13 | :show-inheritance: 14 | 15 | DashboardDeutschland.api.get\_api module 16 | ---------------------------------------- 17 | 18 | .. automodule:: DashboardDeutschland.api.get_api 19 | :members: 20 | :undoc-members: 21 | :show-inheritance: 22 | 23 | DashboardDeutschland.api.indicators\_api module 24 | ----------------------------------------------- 25 | 26 | .. automodule:: DashboardDeutschland.api.indicators_api 27 | :members: 28 | :undoc-members: 29 | :show-inheritance: 30 | 31 | Module contents 32 | --------------- 33 | 34 | .. automodule:: DashboardDeutschland.api 35 | :members: 36 | :undoc-members: 37 | :show-inheritance: 38 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/source/DashboardDeutschland.apis.rst: -------------------------------------------------------------------------------- 1 | DashboardDeutschland.apis package 2 | ================================= 3 | 4 | Module contents 5 | --------------- 6 | 7 | .. automodule:: DashboardDeutschland.apis 8 | :members: 9 | :undoc-members: 10 | :show-inheritance: 11 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/source/DashboardDeutschland.model.rst: -------------------------------------------------------------------------------- 1 | DashboardDeutschland.model package 2 | ================================== 3 | 4 | Submodules 5 | ---------- 6 | 7 | DashboardDeutschland.model.geo module 8 | ------------------------------------- 9 | 10 | .. automodule:: DashboardDeutschland.model.geo 11 | :members: 12 | :undoc-members: 13 | :show-inheritance: 14 | 15 | DashboardDeutschland.model.geo\_crs module 16 | ------------------------------------------ 17 | 18 | .. automodule:: DashboardDeutschland.model.geo_crs 19 | :members: 20 | :undoc-members: 21 | :show-inheritance: 22 | 23 | DashboardDeutschland.model.geo\_crs\_properties module 24 | ------------------------------------------------------ 25 | 26 | .. automodule:: DashboardDeutschland.model.geo_crs_properties 27 | :members: 28 | :undoc-members: 29 | :show-inheritance: 30 | 31 | DashboardDeutschland.model.get module 32 | ------------------------------------- 33 | 34 | .. automodule:: DashboardDeutschland.model.get 35 | :members: 36 | :undoc-members: 37 | :show-inheritance: 38 | 39 | DashboardDeutschland.model.get\_category module 40 | ----------------------------------------------- 41 | 42 | .. automodule:: DashboardDeutschland.model.get_category 43 | :members: 44 | :undoc-members: 45 | :show-inheritance: 46 | 47 | DashboardDeutschland.model.get\_layout\_tiles\_inner module 48 | ----------------------------------------------------------- 49 | 50 | .. automodule:: DashboardDeutschland.model.get_layout_tiles_inner 51 | :members: 52 | :undoc-members: 53 | :show-inheritance: 54 | 55 | DashboardDeutschland.model.indicators module 56 | -------------------------------------------- 57 | 58 | .. automodule:: DashboardDeutschland.model.indicators 59 | :members: 60 | :undoc-members: 61 | :show-inheritance: 62 | 63 | Module contents 64 | --------------- 65 | 66 | .. automodule:: DashboardDeutschland.model 67 | :members: 68 | :undoc-members: 69 | :show-inheritance: 70 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/source/DashboardDeutschland.models.rst: -------------------------------------------------------------------------------- 1 | DashboardDeutschland.models package 2 | =================================== 3 | 4 | Module contents 5 | --------------- 6 | 7 | .. automodule:: DashboardDeutschland.models 8 | :members: 9 | :undoc-members: 10 | :show-inheritance: 11 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/source/DashboardDeutschland.rst: -------------------------------------------------------------------------------- 1 | DashboardDeutschland package 2 | ============================ 3 | 4 | Subpackages 5 | ----------- 6 | 7 | .. toctree:: 8 | :maxdepth: 4 9 | 10 | DashboardDeutschland.api 11 | DashboardDeutschland.apis 12 | DashboardDeutschland.model 13 | DashboardDeutschland.models 14 | 15 | Submodules 16 | ---------- 17 | 18 | DashboardDeutschland.api\_client module 19 | --------------------------------------- 20 | 21 | .. automodule:: DashboardDeutschland.api_client 22 | :members: 23 | :undoc-members: 24 | :show-inheritance: 25 | 26 | DashboardDeutschland.configuration module 27 | ----------------------------------------- 28 | 29 | .. automodule:: DashboardDeutschland.configuration 30 | :members: 31 | :undoc-members: 32 | :show-inheritance: 33 | 34 | DashboardDeutschland.exceptions module 35 | -------------------------------------- 36 | 37 | .. automodule:: DashboardDeutschland.exceptions 38 | :members: 39 | :undoc-members: 40 | :show-inheritance: 41 | 42 | DashboardDeutschland.model\_utils module 43 | ---------------------------------------- 44 | 45 | .. automodule:: DashboardDeutschland.model_utils 46 | :members: 47 | :undoc-members: 48 | :show-inheritance: 49 | 50 | DashboardDeutschland.rest module 51 | -------------------------------- 52 | 53 | .. automodule:: DashboardDeutschland.rest 54 | :members: 55 | :undoc-members: 56 | :show-inheritance: 57 | 58 | Module contents 59 | --------------- 60 | 61 | .. automodule:: DashboardDeutschland 62 | :members: 63 | :undoc-members: 64 | :show-inheritance: 65 | -------------------------------------------------------------------------------- /python-client/sphinx-docs/source/modules.rst: -------------------------------------------------------------------------------- 1 | deutschland 2 | =========== 3 | 4 | .. toctree:: 5 | :maxdepth: 4 6 | 7 | DashboardDeutschland 8 | -------------------------------------------------------------------------------- /python-client/test-requirements.txt: -------------------------------------------------------------------------------- 1 | pytest-cov>=2.8.1 2 | -------------------------------------------------------------------------------- /python-client/test/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bundesAPI/dashboard-deutschland-api/ad889e9cff9acd5d7b07857bae15de970e7c35ca/python-client/test/__init__.py -------------------------------------------------------------------------------- /python-client/test/test_geo.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import sys 12 | import unittest 13 | 14 | from deutschland.DashboardDeutschland.model.geo_crs import GeoCrs 15 | 16 | from deutschland import DashboardDeutschland 17 | 18 | globals()["GeoCrs"] = GeoCrs 19 | from deutschland.DashboardDeutschland.model.geo import Geo 20 | 21 | 22 | class TestGeo(unittest.TestCase): 23 | """Geo unit test stubs""" 24 | 25 | def setUp(self): 26 | pass 27 | 28 | def tearDown(self): 29 | pass 30 | 31 | def testGeo(self): 32 | """Test Geo""" 33 | # FIXME: construct object with mandatory attributes with example values 34 | # model = Geo() # noqa: E501 35 | pass 36 | 37 | 38 | if __name__ == "__main__": 39 | unittest.main() 40 | -------------------------------------------------------------------------------- /python-client/test/test_geo_api.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import unittest 12 | 13 | from deutschland.DashboardDeutschland.api.geo_api import GeoApi # noqa: E501 14 | 15 | from deutschland import DashboardDeutschland 16 | 17 | 18 | class TestGeoApi(unittest.TestCase): 19 | """GeoApi unit test stubs""" 20 | 21 | def setUp(self): 22 | self.api = GeoApi() # noqa: E501 23 | 24 | def tearDown(self): 25 | pass 26 | 27 | def test_geo(self): 28 | """Test case for geo 29 | 30 | Zugriff auf Geojson-Daten zu Deutschland und den Ländern # noqa: E501 31 | """ 32 | pass 33 | 34 | 35 | if __name__ == "__main__": 36 | unittest.main() 37 | -------------------------------------------------------------------------------- /python-client/test/test_geo_crs.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import sys 12 | import unittest 13 | 14 | from deutschland.DashboardDeutschland.model.geo_crs_properties import GeoCrsProperties 15 | 16 | from deutschland import DashboardDeutschland 17 | 18 | globals()["GeoCrsProperties"] = GeoCrsProperties 19 | from deutschland.DashboardDeutschland.model.geo_crs import GeoCrs 20 | 21 | 22 | class TestGeoCrs(unittest.TestCase): 23 | """GeoCrs unit test stubs""" 24 | 25 | def setUp(self): 26 | pass 27 | 28 | def tearDown(self): 29 | pass 30 | 31 | def testGeoCrs(self): 32 | """Test GeoCrs""" 33 | # FIXME: construct object with mandatory attributes with example values 34 | # model = GeoCrs() # noqa: E501 35 | pass 36 | 37 | 38 | if __name__ == "__main__": 39 | unittest.main() 40 | -------------------------------------------------------------------------------- /python-client/test/test_geo_crs_properties.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import sys 12 | import unittest 13 | 14 | from deutschland.DashboardDeutschland.model.geo_crs_properties import GeoCrsProperties 15 | 16 | from deutschland import DashboardDeutschland 17 | 18 | 19 | class TestGeoCrsProperties(unittest.TestCase): 20 | """GeoCrsProperties unit test stubs""" 21 | 22 | def setUp(self): 23 | pass 24 | 25 | def tearDown(self): 26 | pass 27 | 28 | def testGeoCrsProperties(self): 29 | """Test GeoCrsProperties""" 30 | # FIXME: construct object with mandatory attributes with example values 31 | # model = GeoCrsProperties() # noqa: E501 32 | pass 33 | 34 | 35 | if __name__ == "__main__": 36 | unittest.main() 37 | -------------------------------------------------------------------------------- /python-client/test/test_get.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import sys 12 | import unittest 13 | 14 | from deutschland.DashboardDeutschland.model.get_category import GetCategory 15 | from deutschland.DashboardDeutschland.model.get_layout_tiles_inner import ( 16 | GetLayoutTilesInner, 17 | ) 18 | 19 | from deutschland import DashboardDeutschland 20 | 21 | globals()["GetCategory"] = GetCategory 22 | globals()["GetLayoutTilesInner"] = GetLayoutTilesInner 23 | from deutschland.DashboardDeutschland.model.get import Get 24 | 25 | 26 | class TestGet(unittest.TestCase): 27 | """Get unit test stubs""" 28 | 29 | def setUp(self): 30 | pass 31 | 32 | def tearDown(self): 33 | pass 34 | 35 | def testGet(self): 36 | """Test Get""" 37 | # FIXME: construct object with mandatory attributes with example values 38 | # model = Get() # noqa: E501 39 | pass 40 | 41 | 42 | if __name__ == "__main__": 43 | unittest.main() 44 | -------------------------------------------------------------------------------- /python-client/test/test_get_api.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import unittest 12 | 13 | from deutschland.DashboardDeutschland.api.get_api import GetApi # noqa: E501 14 | 15 | from deutschland import DashboardDeutschland 16 | 17 | 18 | class TestGetApi(unittest.TestCase): 19 | """GetApi unit test stubs""" 20 | 21 | def setUp(self): 22 | self.api = GetApi() # noqa: E501 23 | 24 | def tearDown(self): 25 | pass 26 | 27 | def test_get(self): 28 | """Test case for get 29 | 30 | Zugriff auf alle gültigen Einträge des id-Parameters # noqa: E501 31 | """ 32 | pass 33 | 34 | 35 | if __name__ == "__main__": 36 | unittest.main() 37 | -------------------------------------------------------------------------------- /python-client/test/test_get_category.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import sys 12 | import unittest 13 | 14 | from deutschland.DashboardDeutschland.model.get_category import GetCategory 15 | 16 | from deutschland import DashboardDeutschland 17 | 18 | 19 | class TestGetCategory(unittest.TestCase): 20 | """GetCategory unit test stubs""" 21 | 22 | def setUp(self): 23 | pass 24 | 25 | def tearDown(self): 26 | pass 27 | 28 | def testGetCategory(self): 29 | """Test GetCategory""" 30 | # FIXME: construct object with mandatory attributes with example values 31 | # model = GetCategory() # noqa: E501 32 | pass 33 | 34 | 35 | if __name__ == "__main__": 36 | unittest.main() 37 | -------------------------------------------------------------------------------- /python-client/test/test_get_layout_tiles_inner.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import sys 12 | import unittest 13 | 14 | from deutschland.DashboardDeutschland.model.get_layout_tiles_inner import ( 15 | GetLayoutTilesInner, 16 | ) 17 | 18 | from deutschland import DashboardDeutschland 19 | 20 | 21 | class TestGetLayoutTilesInner(unittest.TestCase): 22 | """GetLayoutTilesInner unit test stubs""" 23 | 24 | def setUp(self): 25 | pass 26 | 27 | def tearDown(self): 28 | pass 29 | 30 | def testGetLayoutTilesInner(self): 31 | """Test GetLayoutTilesInner""" 32 | # FIXME: construct object with mandatory attributes with example values 33 | # model = GetLayoutTilesInner() # noqa: E501 34 | pass 35 | 36 | 37 | if __name__ == "__main__": 38 | unittest.main() 39 | -------------------------------------------------------------------------------- /python-client/test/test_indicators.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import sys 12 | import unittest 13 | 14 | from deutschland.DashboardDeutschland.model.indicators import Indicators 15 | 16 | from deutschland import DashboardDeutschland 17 | 18 | 19 | class TestIndicators(unittest.TestCase): 20 | """Indicators unit test stubs""" 21 | 22 | def setUp(self): 23 | pass 24 | 25 | def tearDown(self): 26 | pass 27 | 28 | def testIndicators(self): 29 | """Test Indicators""" 30 | # FIXME: construct object with mandatory attributes with example values 31 | # model = Indicators() # noqa: E501 32 | pass 33 | 34 | 35 | if __name__ == "__main__": 36 | unittest.main() 37 | -------------------------------------------------------------------------------- /python-client/test/test_indicators_api.py: -------------------------------------------------------------------------------- 1 | """ 2 | Dashboard Deutschland API 3 | 4 | Auf https://www.dashboard-deutschland.de bietet das Statistische Bundesamt DESTATIS einen Überblick zu gesellschaftlich und wirtschaftlich relevanten Daten aus unterschiedlichen Themenbereichen. Diese werden durch Grafiken und Texte ergänzt und regelmäßig aktualisiert. Damit soll eine Möglichkeit geboten werden, aktuelle Kennzahlen und deren Entwicklung übersichtlich darzustellen. # noqa: E501 5 | 6 | The version of the OpenAPI document: 1.0.0 7 | Contact: andreasfischer1985@web.de 8 | Generated by: https://openapi-generator.tech 9 | """ 10 | 11 | import unittest 12 | 13 | from deutschland.DashboardDeutschland.api.indicators_api import ( # noqa: E501 14 | IndicatorsApi, 15 | ) 16 | 17 | from deutschland import DashboardDeutschland 18 | 19 | 20 | class TestIndicatorsApi(unittest.TestCase): 21 | """IndicatorsApi unit test stubs""" 22 | 23 | def setUp(self): 24 | self.api = IndicatorsApi() # noqa: E501 25 | 26 | def tearDown(self): 27 | pass 28 | 29 | def test_indicators(self): 30 | """Test case for indicators 31 | 32 | Zugriff auf unterschiedliche Indikatoren # noqa: E501 33 | """ 34 | pass 35 | 36 | 37 | if __name__ == "__main__": 38 | unittest.main() 39 | -------------------------------------------------------------------------------- /python-client/tox.ini: -------------------------------------------------------------------------------- 1 | [tox] 2 | envlist = py3 3 | 4 | [testenv] 5 | deps=-r{toxinidir}/requirements.txt 6 | -r{toxinidir}/test-requirements.txt 7 | 8 | commands= 9 | pytest --cov=DashboardDeutschland 10 | --------------------------------------------------------------------------------